import skimage.measure
def GM(img,p,q):# геометричний момент напівтонового зображення
if len(img.shape)==3:
img_gray=cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
else:
img_gray=img
G_momemnts=skimage.measure.moments(img_gray, p+q)
return G_momemnts[p,q]
def Nu(img,p,q):# нормалізований момент
scaled_moment=-math.log10(GM(img,p,q))+math.log10(GM(img,0,0))*(1+(p+q)/2)
return scaled_moment
def L2(img1,img2,order):#L2 метрика
L1=[Nu(img1,i,j) for i in range(order) for j in range(order)]
L2=[Nu(img2,i,j) for i in range(order) for j in range(order)]
return np.linalg.norm(np.array(L1)-np.array(L2))
def L0(img1,img2,order):#L0 метрика
L1=[Nu(img1,i,j) for i in range(order) for j in range(order)]
L2=[Nu(img2,i,j) for i in range(order) for j in range(order)]
return abs(np.array(L1)-np.array(L2)).sum()
неділя, 25 квітня 2021 р.
Моментно-інваріантна метрика схожості
Підписатися на:
Дописати коментарі (Atom)
Немає коментарів:
Дописати коментар