2013-09-16 41 views
1

我有很大的噪音(256×256 UINT8)的圖像,所以我由包含值0和1與真實圖像的ROI標記爲1和噪聲標記爲0。提取圖像基於ROI的

如何我使用我製作的roi來提取真實圖像嗎?

它應該是這樣的:如果根據roi座標x,y是1,則保留它,如果不是,則不添加它在新圖像中。

在此先感謝。

回答

0

我想這可能是這麼簡單

yourImage(roi) 

newImage = NaN(size(yourImage)); %Or perhaps zeros instead of NaN 
newImage(roi>0) = yourImage(roi>0) 

如果這不起作用,請給你的變量大小。

這裏是它如何工作的例子:

% Suppose this is your image 
yourImage = uint8(round(255*rand(256))); 
% Suppose this is the mask of zeros and ones you created 
roi = uint8(yourImage < 10); 

newImage = NaN(size(yourImage)); 
newImage(roi>0) = yourImage(roi>0); 
+0

[鏈接] http://imgur.com/EGP8YaR 這是我的變量。它不適用於矩陣構造,並且在嘗試調用圖像(roi)時出現此錯誤: 下標索引必須是實數正整數或邏輯。 「image」是'abdomen',它是一個.mat文件 – MSJ

+0

@ user2782743我看到roi的類型是'uint8',嘗試使用'roi> 0'而不是'roi'是否有幫助(緊湊方式將其轉換爲邏輯) –

+0

不起作用。但感謝您的幫助Dennis – MSJ