2013-04-18 5 views
1

문자 'B', 'M'또는 숫자 '1', '2'를 이미지로 사용하십시오.
이 문자 나 숫자의 종횡비를 알아야합니다. 당신은이미지의 가로 세로 비율을 찾는 방법

s = regionprops(BW, 'BoundingBox'); 
AR = s.BoundingBox(4)/s.BoundingBox(3); 

을 참조하십시오 문자의 경계 상자의 가로 세로 비율을 취할 필요

E = imread('1.jpg'); 
level = graythresh(E); 
BW = im2bw(E,level); 
[m,n]=size(BW); 
AR=m/n 

enter image description here

+0

related (dup이 아님) question : [이미지의 전경 및 배경 픽셀 수를 계산합니다.] (http://stackoverflow.com/questions/16055949/count-the-number-of-foreground-and-background- pixels-in-an-image) – Shai

답변

5

:
나는이 내 코드 올바른 값을 얻을하지 않았다 doc의 값은 'BoundingBox' 인 경우 regionprops입니다.

+0

"regionprops를 호출하기 전에 bwlabel (BW) 또는 double (BW) 이진 이미지를 라벨 매트릭스로 변환하십시오."라는 오류 메시지가 나타납니다. 그 후 저는 L = bwlabel (BW)을 사용합니다; s = regionprops (L, 'BoundingBox'); 그런 다음 줄 AR = s.BoundingBox (4)/s.BoundingBox (3) – aryan

+0

@aryan 줄에 오류가 발생했습니다. 아마도 'BW'에 연결된 구성 요소가 두 개 이상 있기 때문에 오류가 발생했을 것입니다. 이전 질문에 대한 대답에서 사용한 것과 같은 루프를 사용하십시오. 또는'double (BW)'를 사용하여 모든 '1'픽셀을 같은 객체로 취급하십시오 (예제에서 선호하는 방법과 비슷합니다). – Shai

+0

** double (BW) **를 사용하면 결과가 나옵니다. 고마워요. 대단히 .. – aryan

관련 문제