1
我是matlab新手,正在進行圖像處理。我正在使用roipoly功能來創建一個面具。據我所知,我可以使用這樣的:matlab roipoly命令的高級用法
I = imread('eight.tif');
c = [222 272 300 270 221 194];
r = [21 21 75 121 121 75];
BW = roipoly(I,c,r);
figure, imshow(I)
figure, imshow(BW)
下面的圖像示出:
一個觀察我是,當由c & R矩陣中指定的相鄰點之間的內插是通過「線性插值」完成,換句話說,在點之間總是繪製一條直線。是否有可能包含其他類型的插值,如二次或三次樣條插值?
假設我真正想要的是要做到這一點如下圖所示的畫面。 [請原諒我的繪畫,它不太好]。
這裏的圓圈表示輪廓上的點。我希望提取或創建的圖形處於如線條所示的形狀。正如你所看到的,只有當我們使用樣條或二次方程進行插值而不是通過roipoly完成的線性插值時纔有可能。
我該怎麼做?你們能幫我嗎?
不,這實際上不起作用。不能保證輪廓上的點將被均勻分佈。我想要的是繪製一個數字,即使這些點沒有被放置在一個「好」的幾何圖案中。 因此我特意問了關於插值的問題。 – roni
你的意思是說它們在物體周圍的位置不均勻,或者所期望的形狀不能用日食來粗略定義?一個例子會很好,但同時看到使用interp1或類似的編輯。 – nkjt
謝謝。這可能工作。我會試一試。是的,你知道它是正確的!它工作出色。我接受了你的答案!你能否告訴我,如果我可以編寫自己的自定義函數來將它集成到roipoly函數中?你可以告訴我關於指導方針... – roni