#批量提取图像特征轮廓(边框图)sabel算子
import cv2
import numpy as np
import matplotlib.pyplot as plt
import os
def read_path(file_pathname):
# 读取图像
for filename in os.listdir(file_pathname):
img = cv2.imread(file_pathname + '/' + filename)
b, g, r = cv2.split(img)
img2 = cv2.merge([r, g, b])
# 灰度化处理图像
grayImage = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
# 高斯滤波
gaussianBlur = cv2.GaussianBlur(grayImage, (3, 3), 0)
# 二值化
ret, binary = cv2.threshold(grayImage, 127, 255, cv2.THRESH_BINARY)
# Sobel算子
x = cv2.Sobel(grayImage, cv2.CV_16S, 1, 0) # 对x求一阶导
y = cv2.Sobel(grayImage, cv2.CV_16S, 0, 1) # 对y求一阶导
absX = cv2.convertScaleAbs(x)
absY = cv2.convertScaleAbs(y)
Sobel = cv2.addWeighted(absX, 0.5, absY, 0.5, 0)
# 用来正常显示中文标签
# plt.rcParams['font.sans
批量提取图像特征轮廓(基于sabel算子)批量提取SIFT特征
于 2022-07-22 16:27:57 首次发布