一、视频分镜
1、将视频以帧的形式保存为照片
2、比较图像的相似度
一共有四种方法:均值哈希算法、差值哈希算法、感知哈希算法、三直方图算法
import cv2
import numpy as np
import matplotlib.pyplot as plt
import os
os.chdir('/Users/cici/downloads/2021')
# 均值哈希算法
def aHash(img):
plt.imshow(img)
plt.axis('off')
plt.show()
img = cv2.resize(img, (8, 8))
plt.imshow(img)
plt.axis('off') #去掉坐标轴
plt.show()
# 转换为灰度图
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
s = 0
hash_str = ''
for i in range(8):
for j in range(8):
s = s + gray[i, j]
# 求平均灰度
avg = s / 64
for i in range(8):
for j in range(8):
if gray[i, j] > avg:
hash_str = hash_str + '1'
else:
hash_str = hash_str + '0'
return hash_str
def dHash(img):
# 缩放8*8
img = cv2.resize(img, (9, 8))
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
hash_str = ''
# 每行前一个像素大于后一个像素为1,相反为0,生成哈希
for i in range(8):
for j in range(8):
if gray[i, j] > gray[i, j + 1]:
hash_str =