2

저는 OpenCV의 기초를 배우고 있습니다. 좋은 프로젝트가 제가 공부를 더 재미있게 만들어 줄 것이라고 생각했습니다. 몇 가지 아이디어를 생각한 후에 나는 물질적 인 인식 프로젝트를 생각해 냈습니다. 예를 들어, 저는 컨베이어를 가지며 일부 제품 (이 제품은 실제로 중요하지 않습니다)의 생산을위한 재료를 운반하고 있다고 가정합니다. 3 가지 재료가 있으며 조명 조건은 다양합니다 (오전부터 오후까지 자연 채광을 사용하고 밤에는 전구를 사용). 그것은 문제 설명이 될 것입니다.히스토그램 또는 베이지안 네트워크와 같은 다른 상위 수학 도구를 사용하여 재질 분류/인식을 수행해야합니까?

나는 쉽게 얻을 수있는 모래, 나무 및 암석을 사용할 생각이었습니다. 플라스틱 표면에 올려 놓으십시오. 사진을 찍은 후에 히스토그램을 적용하여 색상을 얻은 다음이 색상을 사용하여 재질을 식별합니다. 그러나 번개 조건이 시간이 지남에 따라 변하기 때문에이 사진을 찍고 히스토그램을 적용하면 색이 바뀌고 재료가 제대로 인식되지 않습니다. 그리고 제가 생각하기에 모래와 먼지를 사용하면 색이 비슷하지만 질감이 다르습니까? 저에게 도움이 될만한 것이 있습니까?

나는 단지 몇 가지 아이디어를 원하고 현장의 전문가가 나를 안내 할 수 있습니다.

답변

5

시작 프로젝트에 대한 상당히 진보 된 아이디어. 조명의 차이는 색조 구성 요소를 사용하여 HSV 또는 다른 색 공간을 사용하여 해결할 수 있습니다. 그러나 "질감"의 문제는 두 가지 방법으로 처리 할 수 ​​있습니다 :

  1. 기능 설명을 : 당신이 회색 수준의 이미지를 처리하는 경우, 그레이 레벨 공동 - 발생 매트릭스라는 기능 기술자의 세트가있다 (GLCM) 이미지의 여러 영역의 텍스처를 측정합니다. 이것은 Matlab에 존재합니다. OpenCV의 경우 다음 코드가 있습니다 : in C.

    그래서 모래, 나무 및 암석을 여러 번 촬영하여 NN, SVM, OpenCV Haar 분류기 등의 분류 기준에 따라 교육 샘플로 사용할 수 있습니다. 그런 다음 부정적인 표본으로 교육하십시오. 분류 자의 특징 벡터는 각 그림에 대한 GLCM 출력이됩니다. 그런 다음 실제 사진에서 실행하고 얼마나 정확한지 확인하십시오.

  2. 텍스처 거칠기는 : 고유치가 변환이라는 텍스처의 '거칠기'에 대한 단일 값 측정을 보여줍니다 this 유용한 종이를 가로 질러왔다. 특히 OpenCV의 SVD()을 고유 값 계산에 사용하면 계산이 매우 간단합니다. 고유 변형의 결과는 그 부분의 거칠기에 해당하는 값을 제공합니다. 필요한 부분을 분리하는 데 사용할 수 있습니다.