2016-02-10 154 views
1

我在圖像上使用了函數imfindcircles,但是發生了一個錯誤,該函數或方法對'uint8'類型的輸入參數使用了'imfindcircles'。我正在使用本教程Mathworks。我的代碼:函數imfindcircles Matlab

rgb = imread('circles.png'); 
figure 
imshow(rgb) 
gray_image = rgb2gray(rgb); 
imshow(gray_image); 
[centers, radii, metric] = imfindcircles(I,[40 45]); 
centersStrong5 = centers(1:5,:); 
radiiStrong5 = radii(1:5); 
metricStrong5 = metric(1:5); 

這是錯誤:???對於'uint8'類型的輸入參數,未定義的函數或方法'imfindcircles'。

+0

您是否恰好在當前工作目錄中有一個名爲'imfindcircles.m'的文件? – beaker

+0

編號這是Matlab的功能 –

+0

我明白MATLAB有一個叫做'imfindcircles'的函數。我問的是,如果你用自己的函數或變量名稱掩蓋了實現。因爲這是我現在能想到的唯一方法,那就是錯誤是有道理的。 – beaker

回答

0

你得到了那個錯誤,因爲我沒有定義。將我替換爲gray_image,它會起作用。

[centers, radii, metric] = imfindcircles(gray_image,[40 45]); 

您不需要任何特殊的工具箱或此功能的許可證。