안녕 이력서 / 패턴 인식 커뮤니티,
이미지 분할과 관련하여 심각한 문제가 있습니다. 시나리오는 내 머릿속을 미치게 만드는 용광로 내의 분위기입니다. 그리고 하나의 특수한 경우가 아니라 짧은 시간 (<10 초)으로 다른 재료 (유리, 세라믹, Al, Ir, ..)의 물체 윤곽을 감지해야합니다. 또한 코드에 대해 순차적 인 픽셀 행의 윤곽이 필요합니다. 따라서 체인 코드 또는 소위 경계 / 윤곽선 추적도 필요하므로 열린 구멍이 좋지 않습니다. 백그라운드에는 때때로 나타나는 먼지, 입자 또는 기타 먼지와 같은 비선형 노이즈가 있습니다.
Matlab 또는 OpenCV 제안을 환영합니다.
더 명확하게하기 위해 목표의 또 다른 이미지와 반투명 물체를 게시했습니다.이 이미지도 감지해야합니다. 또한 알아야 할 추가 예입니다.
이미지 # 1에서 볼 수 있듯이 이미지의 오른쪽 부분과 별의 외부 윤곽선 근처에 입자가 있습니다. 또한 전체 대비가 그리 좋지 않습니다. 물체 자체는 지하에 있으며 윤곽 감지와 관련이 없습니다. 이미지 # 2는 반투명 객체를 보여줍니다.
다음 화면 (빨간 선)과 같이 해당 객체의 윤곽 / 둘레를 찾고 싶습니다. 두 개의 직사각형 (노란색)은 시작 (왼쪽)과 끝점 (오른쪽)을 표시합니다. 파란색 선은 무시할 수 없습니다.
처음에는 필터만으로 더러운 분위기의 문제를 해결할 수 있다고 생각했습니다. 그러나 상당한 투자 시간이 지난 후에, 나는 전경과 배경의 대비를 증가시키기 위해 잡음을 크게 줄이거 나 줄여야한다는 것을 깨달았습니다. 히스토그램 이퀄라이제이션, Otsu-adaptive equalization, 선형 필터 (예 : 가우스), 비선형 필터 (중간 값, 확산), 액티브 컨투어, k- 평균, 퍼지 -C- 평균 및 캐니와 같은 많은 방법을 시도했습니다. 형태소 연산자와 결합 된 에지 감지.
- 캐니 : 입자와 대기가 구멍을 일으키고 있지만 물체의 완전한 윤곽이 필요합니다. 여전히 폐쇄, 형태 연산자의 확장으로 충분하지 않습니다. 캐니는 여전히 히스테리시스로 인해 내가 연구 한 모든 방법 중 최상의 결과를 얻었습니다.
- 활성 윤곽 : 가장자리 / 그라디언트에서도 작동하며, 개체 내부를 초기화 한 후 완전히 미쳤습니다. 이는 가장자리 맵이 '개방형'개체를 초래하기 때문일 수 있습니다. 내가 아는 한 윤곽을 닫아야합니다. 다른 파생물 (GVF / VFC / Classic Snake)로 시도했습니다.
- k- 평균 : 안개 배경으로 인해 퍼니스 대기가 결과에 포함됩니다. 퍼지 c 평균도 동일합니다. 객체를 배경에서 분리하기 때문에 두 개의 클러스터를 선택했습니다. 클러스터가 많을수록 결과가 약해집니다.
- 히스토그램 / 오오 츠 : 매우 가까운 회색 강도 (imho!) 때문에 오브젝트를 배경과 병합합니다. 로컬 및 전역 방법으로 시도했습니다.
- 필터 : 특히 GLPF 또는 기타 LPF는 가장자리가 번져서 좋지 않아 안개가 자욱한 분위기를 줄이지 않습니다.
- 비선형 필터는 가장자리를 유지합니다. 큰 이미지를 계산하는 데 시간이 너무 오래 걸립니다. 현재 빠른 양방향 필터를 사용했습니다. 결과는 아래를 참조하십시오.
따라서 객체 세그먼트의 획득 결과가 기존 알고리즘과 경쟁하기 어렵 기 때문에 단일 프로세스로는 후 처리 단계에 충분하지 않습니다. 기존 알고리즘은 매우 로컬이므로이 특별한 시나리오에서 작동합니다.
그래서 만약 당신이 무언가를 완전히 놓쳤다면 당신에게 묻습니다 ... 더 이상 틈이나 구멍없이 가공하는 방법과 어떻게 좋은 윤곽 결과를 얻어야하는지 전혀 알지 못합니다. CCD와 물리적 환경? 미리 감사드립니다!
지금까지의 마지막 접근 방식 (MO로 실험 한 긴 밤 이후) :
- 양방향 필터 (가장자리를 유지하지만 균일 한 영역을 부드럽게 함)
- 캐니 (시그마 = 2, 임계 값 = [0.04 0.08])
- 형태 학적 운영 (MO) :
bwareopen
,closing
,remove
및bridge
bwlabel
원치 않는 노이즈를 제거하는 윤곽의 둘레 만 선택합니다. 아직 업데이트 된 스크린 샷은 없지만 별표에서 작동합니다. 유리에는 외부 윤곽선에 연결된 내부 윤곽선이 있으며 아래 스크린 샷에서도 볼 수 있습니다.
그래서 외곽 윤곽을 순회하기 위해 특별한 알고리즘이 필요합니다. 이웃의 시계 방향 / 반 시계 방향 조회입니다. 코너 포인트가 있으면 시계 / 반 시계 방향으로 전환 할 수 있습니다. 간격이 있으면 반경을 늘리고 다시보십시오. 다음과 같은 두 가지 이상의 가능한 점이 있으면 이전과 같은 방향을 가진 사람을 선택하십시오. 알고리즘을 따르는 등고선이 의미가 있다고 생각하십니까?