0
我正在做我的作業,並且引起了問題。 我的任務是在SciLab中編寫一個將普通圖像轉換爲棕褐色的函數。 我必須使用算法,通過alpha乘以紅色和beta的顏色,其中alpha> 1和beta < 1和alpha + beta = 2。SciLab中的圖像處理(將圖像轉化爲棕褐色)
這是我的代碼。 出於某種原因,這些2線都不能正常工作:
//img2(i,j,2) = img(i,j);
//img2(i,j,3) = uint8(double(img(i,j))*beta);
function out = Ex2(im,alpha)
[h w d] = size(im);
img2 = uint16(zeros(h,w,d));
img = rgb2gray(im);
beta = 2-alpha;
for i=1:h
for j=1:w
img2(i,j,1) = uint16(double(img(i,j))*alpha); //condition if > 255
if img2(i,j,1) > 255 then
img2(i,j,1) = 255;
end
//img2(i,j,2) = img(i,j);
//img2(i,j,3) = uint8(double(img(i,j))*beta);
end
end
out = img2;
endfunction
給我們α和β的例子。另外,什麼與'/'?那不是matlab的評論。請發佈真正的matlab功能。我這可能是scilab? –
此外,如果我將代碼更改爲MATLAB可讀,這工作正常,我得到很好的棕褐色圖像 –
是的,它是SciLab,它也被標記爲MatLab,因爲我雖然這些2程序非常相似,這個函數的調用的一個例子是EX2(MYIMAGE,1.2); – Seoner