import cv2
import matplotlib.pylab as plt
import numpy as np
img1 = cv2.imread('D:\\gudugudu\\Pictures\\weixin\\xiaotidaya.jpg', cv2.IMREAD_ANYCOLOR)
img2 = cv2.imread('D:\\gudugudu\\Pictures\\weixin\\guoqing.jpg', cv2.IMREAD_GRAYSCALE)
img3 = cv2.imread('D:\\gudugudu\\Pictures\\weixin\\zhaoyang.jpg', cv2.IMREAD_GRAYSCALE)
img_x = cv2.resize(img1, (500, 500))
img_y = cv2.resize(img2, (500, 500))
img_z = cv2.resize(img3, (500, 500))
vc = cv2.VideoCapture("D:\\gudugudu\\Pictures\\weixin\\WeChat_20240706150425.mp4")
#canny边缘检测
'''
1.使用高斯滤波器,平滑图像,消除噪音
2.计算每个像素点的梯度强度和方向
3.应用非极大值抑制,消除边缘检测带来的影响
4.应用双阈值来检测真实的边缘和潜在的边缘
5.通过抑制孤立的弱边缘来达到最终的边缘检测
'''
def canny(img):
v1 = cv2.Canny(img, 20, 30)
cv2.imshow('name', v1)
cv2.waitKey(0)
cv2.destroyAllWindows()
'''
图像金字塔
1.高斯金字塔
2.拉普拉斯金字塔
作用:
图像的提取;对每一层进行提取
'''
'''
高斯金字塔: 从下向上采样:
(缩小操作)向下采样的方法;
高斯核去做,将所有偶数行与偶数列去掉
从上向下采样:
将图像扩大两倍,新增的行与列用0代替
'''
def Pyrup(img): #向上采样
up = cv2.pyrUp(img)
cv2.imshow('gudu', up)
cv2.waitKey(0)
cv2.destroyAllWindows()
def Pyrdown(img): #向下采样
down = cv2.pyrDown(img)
cv2.imshow('gudu', down)
cv2.waitKey(0)
cv2.destroyAllWindows()
def Pyrup_down(img):#反复执行会变模糊
up = cv2.pyrUp(img)
updown = cv2.pyrDown(up)
cv2.imshow('gudu', np.hstack((img, updown)))
cv2.waitKey(0)
cv2.destroyAllWindows()
def lapulasi(img):#拉普拉斯金字塔
up = cv2.pyrUp(img)
updown = cv2.pyrDown(up)
l_l = img - updown
cv2.imshow('gudu', l_l)
cv2.waitKey(0)
cv2.destroyAllWindows()
opencv_day7
咕噜咕嘟嘟嘟2024-08-05 23:41
相关推荐
蒙娜丽宁4 小时前
《Python OpenCV从菜鸟到高手》——零基础进阶,开启图像处理与计算机视觉的大门!好喜欢吃红柚子4 小时前
万字长文解读空间、通道注意力机制机制和超详细代码逐行分析(SE,CBAM,SGE,CA,ECA,TA)AI小杨5 小时前
【车道线检测】一、传统车道线检测:基于霍夫变换的车道线检测史诗级详细教程撞南墙者8 小时前
OpenCV自学系列(1)——简介和GUI特征操作王哈哈^_^8 小时前
【数据集】【YOLO】【VOC】目标检测数据集,查找数据集,yolo目标检测算法详细实战训练步骤!柳鲲鹏9 小时前
OpenCV视频防抖源码及编译脚本浮生如梦_14 小时前
Halcon基于laws纹理特征的SVM分类深度学习lover14 小时前
<项目代码>YOLOv8 苹果腐烂识别<目标检测>Eric.Lee202119 小时前
yolo v5 开源项目其实吧320 小时前
基于Matlab的图像融合研究设计