2017-10-15 5 views
-1

저는 동전 인식 프로젝트를하고 싶습니다. 카메라가 동전 몇 장을 찍은 후 값으로 인식하고 금액을 합산하여 출력합니다. 나는 동전 크기가 커지면 값을 인식하는 것을 생각하고 있었지만 동전이 더 커지면 값이 커졌습니다. 그러나 생각할 수있는 문제는, 다른 각도에서 사진을 찍거나 카메라가 평소보다 동전과 다른 거리가 있다면 어떨까요? 그것을 해결하는 방법 또는 거기에 대한 다른 방법이 있습니까? 이전에 이미지 처리 경험이 없기 때문에 제가 배우고 싶습니다.카메라가 동전을 인식 할 수있는 적절한 각도는 무엇입니까?

+1

테이크 [예] (http://scikit-image.org/docs/dev/user_guide/tutorial_segmentation.html) (전처리 용). 나는 크기 측정법을 따르지 않을 것이지만, 객체 분류 (고전적인 ML 도구)에 의해 추종되는 어떤 종류의 객체 탐지 ​​(예제에서 이미 해결되었을 수도 있음). – sascha

답변

1

경험이 없다면 달성하고자하는 것은 그리 쉽지는 않지만 ... 이미징 프로세스의 기본 사항과 그 기하학을 이해할 수 있다면 카메라 각도는 문제가되지 않습니다. 보정 된 카메라를 사용하면 동전이있을 표면의 편파를 검색 할 수 있습니다 (테이블에 있다고 가정).

동전을 인식하려고 할 때 실질적으로 할 수있는 일은 타원형 피팅 알고리즘이나 동그라미 변환을 사용하여 전처리 법을 사용하여 원본 이미지에서 얻은 표의 새가 들어간보기에서 원을 찾습니다.

0

내 생각에, valleymanbs가 말한 것은 기본적으로 정확합니다. 내가 당신에게 중요하다고 생각하는 몇 가지를 추가하십시오. 다음 내용을 이해해야합니다.

    카메라 보정. -> 초점 길이 및 주점 등의 고유 매개 변수와 카메라 회전 및 평행 이동과 같은 외부 매개 변수가 있으므로 나중에 이미지를 수정할 수 있습니다.

  1. 이미지를 수정하십시오. -> 이미지 recification을 사용하면 이미지를 수정할 수 있으므로 이미지를 볼 수 있습니다. 이 목적을 위해 동전을 놓을 테이블 바로 위에 카메라를 올려 놓는 것이 좋습니다. 카메라와 테이블 사이의 거리는 커야하는데, 이는 카메라의 해상도가 충분히 높아야 함을 의미합니다.

  2. 카메라 보정 및 이미지 정류의 원리를 이해하고 동전 이미지를 얻는 한, 일식 알고리즘 또는 hough 변환을 사용하여 이미지 분할을 할 수 있습니다. 동전의 원을 그리면됩니다.

  3. 그런 다음 원의 면적을 계산하는 데 필요한 것이면 이진화 또는 침식과 같은 일부 이미지 처리를 수행 할 수 있습니다.

  4. 그러나 개인적으로 다른 값을 가진 동전이 실제로 비슷한 크기를 가질 수 있기 때문에 개인적으로 나는 동전의 크기와 같은 단 하나의 특징을 취하지 않을 것입니다. 그러므로 분류기라고하는 다른 기술을 추천합니다. 색상이나 질감과 같은 기능을 추가 할 수 있습니다. 그렇다면 SVM : 지원 벡터 머신을 적용하여 동전을 올바른 클래스로 분류 할 수 있다고 생각합니다.

    이미지 처리에 대한 경험이 없음을 이해합니다. 그러나 귀하의 솔루션에 대한 지름길은 없습니다. 내 제안의 틀과 각 단계의 근본적인 이유를 이해하는 데 시간을 할애하는 것이 좋습니다. 재미있게 보내십시오. :) 희망이 도움이 될 수 있습니다. 적어도 그 고전적인 이미지 처리 도구가 당신을 위해 무엇을 할 수 있는지에 대한 데모로

+0

초보자를위한 나의 대답의 위대한 설명, 감사합니다 yirui. 나는 당신이 4 절에서 제안한 일종의 사전 처리 후 OpenCV의 blob 검출기를 사용하여 원을 검색하고 검출 된 blob 주위의 ROI를 선택한 다음 분류자를 실행할 수 있다고 정확하게 말하면됩니다. 이러한 투자 수익에만 의존합니다. 크기뿐만 아니라 두 배로 확인하는 것이 바람직하지만 적합 형 얼룩은 쉽고 빠릅니다 ... 또한 수표를 유지하고 분류 자로 견고하게 만들 수 있습니다. – valleymanbs