1
我試圖採用imcrop的圖像樣本,但我有問題。我的代碼的下一部分是嘗試訪問修補程序中的像素,但我得到一個錯誤:嘗試訪問修補程序(1,1);嘗試訪問修補程序(1,1);嘗試訪問修補程序索引超出範圍,因爲尺寸(貼片)= [0,0]Matlab imcrop返回一個圖像大小爲零
所以我增加,
disp(size(patch))
顯然貼劑的尺寸是0 0,但我不理解爲什麼是這種情況。基於對有關imcrop堆棧溢出的其他問題,我也試過
patch = imcrop(sample, [x y x+patchsize-1 y+patchsize-1])
這也造成了其大小的補丁零
注:大小並不總是返回零,在第一種情況下,根據關於隨機插入x和y的內容,補丁有時會有尺寸補丁大小,但它不會發生在100%以上的時間,而在第二個示例中,它有時會有大小不等的大小,但我無法理解這種不一致是來自哪裏。
更新:
[sample_width, sample_height] = size(sample);
應該是:這個問題從我的代碼的一部分來
sample_width, sample_height, depth] = size(sample);
它可能不是錯誤的原因,但由於尺寸(...)給出的數行作爲第一個輸出,不應該在代碼的第二行切換sample_width和sample_height? – 2014-09-22 01:00:03
謝謝你,你絕對是對的,不幸的是在這種情況下它是一個方形圖像,所以不是錯誤 – user3325965 2014-09-22 01:01:33
哦拍的來源。出於好奇,樣本的大小是多少? – 2014-09-22 01:03:34