我使用以下代码查找积极因素:
[U S V] = svd(image, 'econ'); % calculate the SVD of the image
level = 4;
factorJND = jnd(image, level) ; % calculate the JND values of the image
f = factorJND / abs(U*V) % divide the JND value by the multiplication of U and V matrices( they have the same size)
知道因子JND和abs(U * V)都是正数,它给出了正数和负数!!我不知道为什么!
f = -7.2851 6.4520
-7.7509 5.5236
-7.3374 4.1684
-5.6905 5.0915
我甚至尝试这样做:
f = abs(factorsJND) / abs(U*V)
但是仍然给我相同的结果,而它应该是所有正值!
答案 0 :(得分:2)
您正在使用matrix right division(/
)而不是an element-wise division(./
)。因此,结果可能对两个输入具有负值,其中所有值本身都是正值。你很可能是元素划分。
f = factorJND ./ abs(U*V);