2013-12-09 9 views
0

다소 균일 한 갈색 배경에 작은 검은 얼룩이 많은 기본 이미지 인 많은 유사한 이미지의 분석을 자동화해야합니다.김프의 연속 선택 도구와 같은 프로그램

나는 simpleCV에서 find_blobs 메서드를 시도했지만 충분하지 않습니다. 그러나 김프 연속 선택 도구 (Magic wand라고도 함)를 사용하면 배경을 내 방울에서 분리 할 때 훨씬 더 나은 결과를 얻을 수있었습니다.

내 문제는이 프로세스를 자동화해야하므로 각 이미지를 클릭 할 수 없다는 것입니다. 이 기능을 찾을 수있는 Python 친숙 라이브러리에 대한 제안이 있으십니까? 배치 모드에서 김프 만 사용하고 있습니까?

+1

인접 선택은 많은 이미지 편집 프로그램에서 제공하는 [홍수 또는 시드 채우기] (http://en.wikipedia.org/wiki/Flood_fill) 작업과 매우 유사합니다. 차이점은 색상이 즉시 변경되는 대신 픽셀이 선택된다는 것입니다. Python에서 구현하기에는 너무 느릴 수 있기 때문에 이것이 가능하지 않을지 모르겠다. 근본적으로 알고리즘은 사용자가 원하는 것을 수행 할 수있는 알고리즘이다. 김프는 오픈 소스이기 때문에 이론적으로이를 사용하면됩니다. – martineau

답변

1

pdb.gimp_image_select_contiguous_color은 파이썬 플러그인에서 마술 지팡이를하는 프로그래밍 방식입니다. 단점은 잘 작동하려면 적절한 시작 좌표를 발행해야한다는 것입니다. Maye는 이미지의 3 개의 원거리에서 프로세스를 반복하며, 선택이 두 개에서 많이 분산되지 않으면 원하는 것으로 가정합니다.

프로 시저가 선택 드로어 블을 반환하지 않으므로 이후에 pdb.gimp_image_get_selection을 실행하여 가져와야합니다. 또한 전화를 걸기 전에 pdb.gimp_context_set_sample_threshold으로 전화하여 임계 값을 설정해야합니다.

(내 제안 : 다른 이미지로 복사, 새 이미지, 픽셀 값을 가져올 수있는 8x8 픽셀 이미지의 크기를 조정하고 다른 선택 사항과 직접 비교).

+0

감사합니다 joão, 나도 김프 밖에서 할 수 없어. 나는 그것을 시도 할 것인데, 아마도 색상으로 점을 선택할 수있을 것이다. 왜냐하면 내 이미지는 모두 같은 배경을 가지고 있기 때문이다. – fccoelho

+0

김프 밖에서도 할 수 있지만, 김프의 파이썬 플러그인을 사용하면 이미지를 열고, 여러 김프 작업을 실행하고, 파일을 저장하기위한 "서버 형"플러그인을 사용할 수 있습니다. 예를 들어, 간단한 Python xml-rpc로 시범을 돌릴 수 있습니다. http://docs.python.org/2/library/simplexmlrpcserver.html을 확인하십시오. – jsbueno

1

OpenCV는 답변 일 수 있습니다. this 간단한 자습서가 도움이 될 수 있습니다. 그 예에서는 "흐림"을 사용하여 이미지를보다 동질화합니다. 충분하지 않으면 erode and dilate도 시도해보십시오.

이러한 예제는 C++이지만 opencv python 바인딩은 C++ 인터페이스와 매우 유사하므로 번역하는 데 문제가 없어야합니다.