Delphi Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
델파이 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
FreePascal/Lazarus
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
델마당
볼랜드포럼 광고 모집

델파이 Q&A
Delphi Programming Q&A
[15589] Re:omr카드를 스캔한 이미지에서 마킹한 수험번호을 알려면..
소지영(몽인) [neonim] 2335 읽음    2015-11-16 00:51
해보진 않았지만 생각보다 쉽게 될거 같습니다.

대략 다음과 같은 과정으로 처리됩니다.

칼라 이미지를 취득 했으면 이진화를 거치고 레이블링을 해서 각각의 도형의 좌표를 구합니다.
(이기서 도형이란 흰 바탕의 검은색 모두를 말합니다.)
그리고 이 좌표들 속에서 적절한 기준점의 위치를 찾아 마킹한 것과 안한것의 좌표를 구하면 됩니다.

적절한 기준점이라고 한 이유는 OMR도 양식이 다 다르니 사용하고 있는 양식에서 기준으로 될만한 것을 스스로 찾아야 합니다.
만약 카메라로 대충 찍은것이 아닌 스캔이라면 좀더 쉬울겁니다.
해상도, 이미지 사이즈가 같다면 레이블링을 한후에 잡영만 제거하면 남아있는것은 마킹한 것일테니 남아있는것의 좌표만으로도 쉽게 알수 있을겁니다.
즉, X,Y절대좌표 검사만으로도 되니까요...

이진화나 레이블링이나 잡영제거등은 OpenCV를 이용하여 쉽게 구현 가능합니다.
OpenCV에서 좌표들도 쉽게 구해줍니다.

OpenCV는 마틴님의 강좌가 도움이 많이 되실겁니다.
http://martinblog.tistory.com/category/%5B%20%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%B0%8D%20%5D/%EA%B0%95%EC%A2%8C










밴댕이소갈딱지 님이 쓰신 글 :
: 학생들이 시험볼때 사용하는 omr카드를 스캔해서 jpg이미지 파일로 떨구었습니다.
:
: 그 이미지에서 마킹한 수험번호가 있을텐데 그 수험번호를 이미지 파일에서 알아와야 합니다.
:
: 어떻게 시작해야 하는지 통 감이 안 잡히네요
:
: 추천 사이트나 도움이 될만한 답변 부탁 드립니다.
:

+ -

관련 글 리스트
15576 omr카드를 스캔한 이미지에서 마킹한 수험번호을 알려면.. 밴댕이소갈딱지 1808 2015/10/27
15589     Re:omr카드를 스캔한 이미지에서 마킹한 수험번호을 알려면.. 소지영(몽인) 2335 2015/11/16
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.