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
相关推荐
格林威2 小时前
多相机拼接:消除重叠区域的6个核心方法,附OpenCV+Halcon实战代码!唯道行10 小时前
计算机图形学·23 Weiler-Athenton多边形裁剪算法范男14 小时前
Qwen3-VL + LLama-Factory进行针对Grounding任务LoRA微调猛码Memmat16 小时前
SAM 3: Segment Anything with Conceptsfengfuyao98516 小时前
MATLAB实现全景拼接HyperAI超神经16 小时前
在线教程丨30毫秒处理100个检测对象,SAM 3实现可提示概念分割,性能提升2倍c#上位机17 小时前
halcon获取区域中心坐标以及面积——area_centerCoding茶水间18 小时前
基于深度学习的遥感地面物体检测系统演示与介绍(YOLOv12/v11/v8/v5模型+Pyqt5界面+训练代码+数据集)深度学习lover21 小时前
<数据集>yolo茶叶嫩芽识别数据集<目标检测>AI视觉网奇21 小时前
live2d 全身数字人