2017-11-14 15 views
0
나는 이미지에서 볼트, 너트, 와셔를 분류 할 필요가

,자바 이미지

에서 특정 개체를 인식하지만 이미지에서 그 물체를 감지하는 방법을 모르겠어요.

enter image description here

는 I 2 차원 배열에서 이미지 (사용 java.awt.Color의) 값을 각 컬러 복사

,

(이 이미지 부분 없음)하지만 더있을 이 일과 내가 뭘해야하는지 생각해.

프로그램을 분류하려면 프로그램에서 어떤 부분이 배경이 아닌지 알아야합니다.

자바에 라이브러리가 있습니까?

+0

신경망은 이미지를 분류하려는 경우 조사 할 수있는 주제가 될 수 있습니다. 그러나 훈련을위한 훈련 세트라는 데이터가 필요합니다. – Adam

답변

0

Java에서 수행하는 방법은 Java 기본 인터페이스가있는 OpenCV 라이브러리를 사용하는 것입니다. 함께 OpenCV의 자바를 사용하는 방법을 배우기 위해 아래 링크를 참조하십시오 :

물론

http://opencv-java-tutorials.readthedocs.io/en/latest/

자바를 사용 OpenCV의 사용자의 요구를 해결하는 것만으로는 충분하지 않습니다하는 방법을 알고있다. 따라서 이미지 처리 주제에 대해서도 배워야합니다. 이 동기를 부여 프리젠 테이션을 참조하십시오

https://pt.slideshare.net/luigidr/introduction-to-open-cv-28728435

당신이 등등 영상 분할, 색 공간, 구조 해석 등 많은 것들을 배울 준비가되어 있어야주의하십시오. 재미 있어요!

0

openCV를 사용해 보셨습니까? Here은 얼굴 검출 예입니다. 문제가 조금 비슷합니다. 도움이 될 수 있습니다

0

이미지에 개체가 있는지 확인하려면 해당 개체의 가장자리가 어디인지 확인해야합니다. 이미지를 보면 각 오브젝트 가장자리의 색상과 비교하여 배경 색상에 큰 차이가 있음을 알 수 있습니다.

당신이 한 것처럼 당신의 프로그램을 컬러 데이터로 읽을 수 있으며, 충분한 양만큼 색이 바뀌 었다는 것을 알게 될 때, 프로그램은이 점을 강조 할 것입니다. 이것은 컬러 데이터에 sobel 필터를 적용하여 수행됩니다.

이렇게하면 개체의 가장자리가 강조 표시됩니다. 여기에서 둘러싸인 영역의 크기 나이 모서리의 특성을 분석하여 강조 표시된 개체를 결정할 수 있습니다.

Here은 좋은 답변이있는 소블 필터 적용에 관한 질문에 대한 링크입니다.

OpenCV와 같은 라이브러리에는 sobel 필터링 및 이미지 검색 기능이 있지만 소벨 필터를 직접 구현하는 데는 너무 많은 코드가 필요하지 않습니다. 나는 그것이 더 간단한 해결책 일 것이라고 믿는다. OpenCV 설치 및 학습에는 자체 sobel 필터를 적용하는 것보다 더 많은 시간이 걸릴 것입니다.