imgB = imgradient(B);
imgG = imgradient(G);
imgR = imgradient(R);
currentSSDBG = sum(imgB-imgG).^2;
currentSSDBR = sum(imgB-imgR).^2;
for rowShift = -15:15
for colShift = -15:15
shiftedG = circshift(imgG, [rowShift, colShift]);
SSDBG = sum((imgB - shiftedG).^2);
if sum(sum(SSDBG))<sum(sum(currentSSDBG))
SSDBG = currentSSDBG
bestVector = [rowShift,colShift];
end
fG = circshift(G, bestVector);
end
end
上面是一点CODING,我知道出错了,但是我不知道错了什麼?
if sum(sum(SSDBG))<sum(sum(currentSSDBG))
SSDBG = currentSSDBG
bestVector = [rowShift,colShift];
这里的rowShift,colShift永远只给我15,不是我想要的结果啊!!!
imgG = imgradient(G);
imgR = imgradient(R);
currentSSDBG = sum(imgB-imgG).^2;
currentSSDBR = sum(imgB-imgR).^2;
for rowShift = -15:15
for colShift = -15:15
shiftedG = circshift(imgG, [rowShift, colShift]);
SSDBG = sum((imgB - shiftedG).^2);
if sum(sum(SSDBG))<sum(sum(currentSSDBG))
SSDBG = currentSSDBG
bestVector = [rowShift,colShift];
end
fG = circshift(G, bestVector);
end
end
上面是一点CODING,我知道出错了,但是我不知道错了什麼?
if sum(sum(SSDBG))<sum(sum(currentSSDBG))
SSDBG = currentSSDBG
bestVector = [rowShift,colShift];
这里的rowShift,colShift永远只给我15,不是我想要的结果啊!!!
