2012-03-30 1 views
1

나는 텍스트 스캔 이미지의 차이점을 강조해야하는 프로젝트를 진행 중입니다.차이점을 강조하기위한 opencv 또는 imagemagick

예 이미지 herehere이다.

나는 HTML, 이에 대한 JS 기반의 웹 애플리케이션을 구축하고있다. openCV가 두 이미지 간의 차이점을 강조 표시하는 것을 발견했습니다. 또한 imageMagick도 이러한 지원을받는 것을 보았습니다. openCV는 이미지 자동 등록을 지원합니까? 그리고 openCV 용 JS 모듈이 있습니까? 어느 것이 내 목적에 더 적합합니까?

+0

이 작업은 사소한 없습니다. – karlphillip

답변

2

1 단순한 방법 :

는 이미지가 완벽하게 정렬과 유사하게 조명하는 가정 : 다음 임계 값 결과가 시끄러운 모양을 필터링, 픽셀에 의해 다른 픽셀에서 하나 개의 이미지를 빼기하고, 가장 큰 사람을 선택합니다. 학교 프로젝트에 유용합니다.

조금 더 복잡합니다. 이미지를 정렬 한 다음 조명을 균일하게하는 방법을 찾은 다음 간단한 방법을 적용하십시오. 정렬 방법 :

  • 두 이미지의 텍스트 영역을 파일 색상보다 어두운 것으로 찾습니다.
  • 모서리 찾기
  • 이미지 간 변환을 찾으려면 getPerspectiveTransform()을 사용하십시오.
  • warpPerspective() 이미지를 다른 이미지로 만듭니다.

두 이미지를 등록하는 또 다른 방법은 매칭 기능이다. 그것은 OpenCV에서 상당한 지원을하고 있습니다. 그리고 findHomography()는 더 큰 매칭 포인트 집합에서 두 이미지 사이의 포즈를 추정합니다.

canonical 대답 : 이미지를 정렬하십시오. OCR 엔진이있는 텍스트로 변환하십시오. 두 이미지의 텍스트를 비교하십시오.

+0

감사합니다. findPrespective는 openCV 라이브러리의 일부입니까? – code4fun

+0

좋아요, 함수 이름은'getPerspectiveTransform()'입니다; – Sam

+0

, 실제로 나는 ImageMagick을 사용하여 초기 성공을 거두었지만, 지금은 좀 더 복잡한 텍스트 이미지를 사용하고 있습니다. http : // imgur.이 이미지에서 문자의 크기가 다르므로 이러한 종류의 이미지에 대해 openCV의 기능 일치를 사용할 수 있는지 제안 할 수 있습니까? – code4fun

1

음, 실레에 의해 주어진 큰 도움이 외에, 당신은 또한 웹 응용 프로그램의 대답을해야합니다. 서버에서 작동하게하려면 파일 업로드 양식과 적용된 알고리즘을 사용하는 서버의 대답이 필요할 것입니다. 보유한 서버 제한 사항에 따라 여러 가지 방법으로 수행 할 수 있습니다. 커맨드 라인 인자를 사용할 수 있다면, 아마도 opencv에서 하이라이트 알고리즘을 구현하고 두 입력 파일을 프로그램을위한 하나의 출력 파일로 전달해야 할 것입니다. 파일 업로드, 명령 행 프로그램 호출, 결과 출력 등을 위해 PHP 스크립트를 사용해야합니다. 또 다른 방법은 Apache Tomcat과 같은 웹 컨테이너에서 java와 JavaCV를 사용하는 것입니다.

안부, 다니엘