2011-06-12 5 views
1

PNG 이미지가 있고 그 사각형을 볼 수있는 이미지에 맞추려합니다. 여기PNG 이미지에 맞추기 사각형을 얻으십시오.

내 이미지 예 :

enter image description here

내가 그 안에 이미지보다 더 큰 이미지 크기를 가지고있다.

바깥 쪽 사각형은 내 이미지의 실제 너비와 높이입니다. 그리고 사각형을 내부 사각형과 같은 가시적 인 이미지에 의존하게합니다.

자바를 사용하고 있습니다. 내가 어떻게 할 수 있니? 당신이 그것을 직접 수행 할 경우

+1

StackOverflow에 오신 것을 환영하며 다음과 같은 세 가지 일을 상기시켜 드리겠습니다. 1) 도움을 받으면 해당 분야 전문가에게 질문 **에 답변 해주세요. 2) FAQs'] (http://tinyurl.com/2vycnvr) 3) 좋은 Q & A를 볼 때 [회색 삼각형을 사용하여] 투표를하십시오 (http://i.imgur.com/kygEP.png), 시스템의 신뢰성은 사용자가 자신의 지식을 공유함으로써 얻을 수있는 평판에 기반하기 때문입니다. 또한, 문제가있는 경우 문제를 해결할 수있는 답을 수락하는 것을 잊지 마십시오. (http://tinyurl.com/4srwe2t) –

+0

죄송합니다. 나는 이곳에서 새로운 기능을 사용합니다. ... – Kenjiro

답변

1

, 내 생각은 :

이미지의 상단에 시작 :

  1. 이미지의 최상위 라인을 스캔하고 독특한 색상의 수를 계산합니다. 여기서 "뚜렷한"것을 정의하고 싶은 경우가 있습니다.
  2. 단 하나의 색만있는 경우 해당 색을 기억하십시오. 그렇지 않으면 너는 정상을 위해 끝내게된다.
  3. 다음 줄을 검사하십시오. 색상이 하나 뿐이고이 색상이 맨 위 줄의 색상과 같으면 3 단계를 계속 진행하십시오.
  4. 완료되었습니다. 현재 줄은 첫 번째 "관련"이미지 줄입니다.

이미지의 다른 테두리에 위 단계를 반복하면 완료됩니다.

참고 : 제대로 여러 사람에 전체 작업을 분할해야 알고리즘을 테스트 할 수 있도록 :

  1. Rectangle visibleRectangle(BufferedImage image); 이것은 자동화 된 테스트를위한 좋은 인터페이스입니다.
  2. BufferedImage crop(BufferedImage image, Rectangle image); 나머지 프로그램은 프로그래밍이 간단해야합니다.
+0

PixelGrabber를 사용하고 있습니다. 투명도를 가진 픽셀의 정수가 0입니다. – Kenjiro

관련 문제