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
相关推荐
西西弗Sisyphus1 小时前
基于推理的目标检测 DetGPT伊一大数据&人工智能学习日志2 小时前
OpenCV计算机视觉 01 图像与视频的读取操作&颜色通道18号房客3 小时前
计算机视觉-人工智能(AI)入门教程一X_StarX4 小时前
数据可视化期末复习-简答题阿勉要睡觉4 小时前
计算机图形学知识点汇总是十一月末5 小时前
Opencv实现图像的腐蚀、膨胀及开、闭运算云空5 小时前
《探索PyTorch计算机视觉:原理、应用与实践》长风清留扬6 小时前
基于OpenAI Whisper AI模型自动生成视频字幕:全面解析与实战指南湫ccc16 小时前
《Opencv》基础操作详解(3)西西弗Sisyphus19 小时前
探索多模态大语言模型(MLLMs)的推理能力