2017-12-05 9 views
1

저는 OpenCVSharp3의 초심자이며이 라이브러리를 사용하여 이미지 일치를위한 몇 가지 예를 살펴 보았습니다.Image opencvsharp3을 사용한 이미지 일치

내 질문의 핵심은이 question의 코드가 거의 100 % 동일한 두 이미지를 비교해야하지만, 그 중 하나는 회전 (무제한 회전) 및 때로는 약간 회전하는 것을 알 수 없다는 것입니다. 소스 (일부 픽셀)에서 벗어났습니다.

이러한 질문에서 얻은 방법은 기본적으로 한 이미지가 다른 이미지와 다른지 비교하지만 내 프로젝트는 같은 크기의 이미지 5 개를 비교하면됩니다.

해당 알고리즘이 유효합니까?

편집 : 여기

감지하는 5 개 이미지의 예입니다 같은 :

enter image description here

답변

0

그것은 유효 할 수 있지만 :

  1. 무제한 회전을하려는 경우 참조 이미지를 회전 된 다른 이미지의 무한한 조합과 비교해야합니다.
  2. 다른 이미지가 소스에서 벗어난 경우 가능한 모든 위치 이미지를 생성해야합니다.
  3. 이 두 가지 기술을 결합하면 많은 조합을 갖게됩니다.

그래, 한 이미지에 대해 가능한 모든 다른 이미지를 생성하여 참조 이미지와 비교할 수 있습니다.

매우 견고하지는 않지만, 우수한 픽셀로 옮겨진 이미지에서 시도해 볼 때 추가 할 내용은 무엇입니까? 이미지에 색상 조정이 수행 된 경우? 사람이 그레이 스케일이라면?

이 문제에 대해 기계 학습을 사용하는 것이 좋습니다. I는 다음과 같이 진행할 것이다 :

  1. 은 이미지의 집합 각 이미지
  2. 을 데이터 보강 (그것이 가능하다 모든 회전 변위, 소음을)를 만든다.
  3. CNN을 사용하여 이미지의 각 변형을 동일한 이미지로 인식합니다.
  4. 이 완료
  5. , 당신은 여기에서 작업 :

파이썬과 MNIST CNN의 간단한 구현을 위해 C# https://github.com/migueldeicaza/TensorFlowSharp

에 대한 tensorflow의 구현을 수행하는 알고리즘을 see here

Here CNN 작동 방식을 설명하는 비디오 (기능 감지 및 풀링 작업을 보면 도움이 될 수 있음)