2010-03-02 2 views
3

누군가가 나에게 다음과 같은 생각을 시작 수 :자바 2D 도면 및 편집 이미지의 개체 및 이미지 감지 모양

내 자바에 (자바 스윙) 응용 프로그램 (평면도를 이미지를로드 할 또는 파란색 인쇄). 바닥 평면도 이미지에 3 개의 도형이있는 흰색 배경 (직사각형, 삼각형 및 원)이 있다고 가정 해 보겠습니다. 도형에는 검은 색 테두리가 있습니다.

프로그램은이 모양을 감지하고 그 모양 위에 3 개의 모양을 그려야합니다.

예 : 사각형을 감지하면 이미지의 사각형 위에 새로운 사각형이 그려집니다. 그 여분의 직사각형이 그려지면 사용자는 사각형을 수정하고 직사각형을 채우거나 테두리 스타일을 변경하는 등 추가 작업을 할 수 있어야합니다.

예 :이 경우 작은 점 또는 사각형 구석에있는 사각형을 드래그/크기 조정/이동할 수 있도록 표시해야합니다. Visual Studio의 스크린 샷과 같은 비트 : http://farm1.static.flickr.com/49/132219212_061a1300af_o.png

누구에게도이 튜토리얼이 있습니까? 매우 유용한 Java 알고리즘이 누락 되었습니까? 기타...? 모든 제안이나 도움을 사전에 오신 것을 환영합니다

TNX입니다

+0

이것은 컴퓨터 비전입니다. 선과 다른 모양을 감지 할 수있는 게시 된 루틴이 많이 있습니다 (Java가 아닌). http://en.wikipedia.org/wiki/Edge_detection – Pool

답변

1

음,이 일을 한 무력 방법은 이미지의 픽셀을 통과 BufferedImage에 대한 API를 참조, 그리고 연속 픽셀 모양을 감지하는 것 특정 색상. 나는 이것을하는 훨씬 더 효율적인 방법이 있다고 확신한다.

+0

글쎄, 이것도 염두에 두지 만 수평/수직선에서만 작동합니다. 타원은 어떨까요? – juFo

+0

구형 또는 원형을 근사하게하는 추론을 찾아 픽셀을 스캔 할 때 찾아야합니다. 나는 아직도 이것을 성취하는 더 좋은 방법이 있다고 생각하지만, 지금은 아무 것도 생각할 수 없다. 이러한 문제를 논의하는 여러 논문 (http://www.umiacs.umd.edu/~hankyu/shape_html/)이 있습니다. – broschb

+0

어쨌든 조금 복잡해 보입니다. (나 같은 초보자에게는) broschb하지만 thnx. 더 나은 방법을 찾았습니까? 나는 canny edge detection에 관한 것들을 발견했지만 구현이 쉬운 지 모른다. – juFo

1

모든 문제 (색상, dpi, 회전, 전단)가 발생할 수있는 스캔 한 그림의 모양을 올바르게 감지합니다. 스캔되지 않은 사진조차도 매우 어려울 수 있습니다. OpenCVJava에서 사용하고 싶을 수 있습니다.

관련 문제