Matlab에서 도로 표지 인식 프로그램을 수행하고 있는데 원형 도로 표지를 인식하고 싶습니다. 따라서 나는 matlab 함수 imfindcircles를 사용한다. 원형 도로 표지 만 자르고 분리 된 그림에 넣고 싶습니다. 그러나 우리는 각 그림 (삼각형 또는 사각형)마다 다른 roadsigns을 가지고 있지만 나는 그것들을 원하지 않습니다. 나는 이것을 어떻게하는지 모른다. 여기에 내 코드 :imfindcircles로 이미지의 원 자르기
[im_bw,map] = imread('roadsign.JPG'); %image black and white
S = regionprops(im_bw,'Extrema','Centroid','BoundingBox');
[centers, radii] = imfindcircles(im_bw,[12 40]);
for k = 1:length(S)
im_cercle = imcrop(im_bw, S(k).BoundingBox);
im_cercle = padarray(im_cercle, [20 20]); % put each roadsigns in a small figure
if radii(k) ~= 0 % Error
figure,imshow(im_cercle); title 'Circle spotted'; % Show every circular roadsigns in a figure
else
figure('visible','off'),imshow(im_cercle); title 'wrong raodsign';
end
end
나는 센터와 반경과 다른 조건을 시도했지만 내가 코드를 실행할 때, 나는 차원의 오류를 얻거나 때때로 나를 원이 아닌 모양을 보여줍니다. 또한 서클을 찾을 때만 설정하는 변수를 시도했지만 결과는 표시하지 않았습니다. 도와 줄수있으세요 ?
미리 감사드립니다.
이미지를 추가 할 수 있으면 도움이 될 것입니다. – bla