0 嘉 禾 天 橙 国 际 大 影 院♡♡

尚未进行身份认证

单身狗请进,情侣止步

等级
TA的排名 9w+

基于OpenCV+pyqt实现的简单照片美颜

闲着没事在网上找美颜的例子,还真叫我找到了,然后自己就写了很丑很简单的一个小界面,可以实现人脸的磨皮和美白,效果还算不错。美颜部分代码是借鉴的大神的。meiyan.pyimport cv2import numpy as npimport sysimport cv2from PyQt5 import QtCore, QtGui, QtWidgetsfrom PyQt5.QtCore i...

2020-03-23 13:53:05

opencv+dlib实现人脸特征点找取完整代码

需要工具包:numpy,cv2,dlibdlib在做人脸识别方面非常好用,我们使用dlib提供的现成的训练集来对模型进行训练。网盘链接提取码:rn0n如果对dlib工具包安装有问题的,请移步win10 64 位系统python3.7 安装dlib包对opencv工具包安装有问题的,请移步小白安装opencv-pythonimport cv2import numpy as npimp...

2020-02-28 15:46:19

python3.7&&windows系统安装dlib工具包(稳如老狗)

我们采取的是先下载whl文件再安装的方法win10 64位,python3.7版本dlib工具包whil文件地址:链接: https://pan.baidu.com/s/1MKqW7WH2XP-J8MOLeq3cDA 提取码: rfh8这个包是一个大佬自己写的。感谢这位大佬https://www.zhihu.com/question/322010083/answer/66582264...

2020-02-27 19:10:41

OpenCV学习之路(十)轮廓的一些操作/contours返回值详解/轮廓类似详解

在findContours()函数中,我们一共返回了三个参数:image,contours,hierarchy。其中image代表的是修改之后的原图,contours代表的是轮廓,hierarchy代表的是轮廓的层次结构。我们主要来讨论一下第二个返回值:contours。以及轮廓可以进行的一些操作。contourscontours代表的是找到的轮廓,它是一个numpy中的列表结构,那么接下来就...

2020-02-24 15:42:06

OpenCV学习之路(九)轮廓详解

有的人可能会问,轮廓跟边缘有什么区别,不都是把物体的边缘画出来吗。实际上是不一样的,边缘一般是不连续的,而轮廓则是把边缘连接成了一个整体。cv2.findContours()这个函数是用来查找图像的轮廓,并且返回几个值。其构造函数如下:image,contours,hierarchy=cv2.findContours(img,mode,method) 参数解释:image:修改后的原...

2020-02-21 16:39:17

opencv-python中Canny算子边缘检测详解

Canny算子是一种非常流行的边缘检测算法,在opencv中直接提供给了我们Canny函数,但是我们还是有必要对其原理有一定的了解。原理Canny算子包含四步操作:去噪首先要去除图像的噪声,边缘检测很容易受到噪声的影响。去噪操作中我们使用的是5*5的高斯滤波器。计算梯度在这一步要计算图像的梯度。不但要计算梯度的大小,还要求出梯度的方向。梯度的方向被归为四类:水平,垂直,两条对角线方向。...

2020-02-21 14:05:03

OpenCV之Laplacian算子

Laplacian算子也是计算图像梯度的一个利器。它相当于二阶Sobel算子的导数。咋来的不再从这里做解释,我们知道怎么用就行了。Laplacian算子的卷积核是这样的:其构造函数如下:cv2.Laplacian(src,ddepth)src:原图ddepth:返回图像的深度。由于在计算梯度时湖出现负数,所以我们选择范围更大的cv2.CV_64F。如果选择-1,即与原图相同,负数就...

2020-02-20 16:46:51

OpenCV之scharr算子详解/scharr算子和sobel算子的区别

scharr算子实际上是sobel算子的优化,scharr算子在处理边缘时比sobel精度高一些。两种算子唯一的区别就是他们的卷积核不同,他们无论在计算时间还是复杂度都是一样的。容易看出两种算子卷积核的差异。opencv中提供给我们scharr算子的函数:cv2.Scharr(src,ddepth,dx,dy)参数解释同sobel,不清楚的请移步OpenCV之sobel算子详解但是我...

2020-02-20 16:28:18

OpenCV之sobel算子详解

原理sobel算子是一种计算不同方向上梯度的工具。原理是使用卷积核对图像进行处理。如果想计算x方向梯度,我们就需要这样的一个卷积核以卷积核的中心为中心,将卷积核与图像上像素值一一对应,卷积核上的数字相当于系数。利用如下公式即可计算出卷积核中心的x方向梯度。同理,如果想要计算y方向的梯度,卷积核应该是这样的,公式也是同理。我们求得了某一像素x方向和y方向的梯度,那么该像素的梯度容易得...

2020-02-20 15:49:36

opencv-python结构化元素cv2.getStructuringElement()

在使用opencv的过程中,我们经常需要各种各样的卷积核。如果是正方形的核还好说,但是有时候需要定义椭圆形或者十字形的核,我们就需要用到cv2.getStructuringElement()函数了第一个参数表示核的形状。可以选择三种矩形:MORPH_RECT;交叉形:MORPH_CROSS;椭圆形:MORPH_ELLIPSE;第二个参数表示核的尺寸。例1:import cv...

2020-02-19 15:54:09

OpenCV学习之路(八)图像的形态学转换(腐蚀,膨胀,开、闭运算,梯度运算,礼帽,黑帽)

形态学操作是对图像形状进行的操作,一般情况下是对二值化图像进行的操作,两个基本的形态学操作是腐蚀和膨胀。腐蚀腐蚀操作很容易理解,与生活中的腐蚀意义一样,生活中的东西在腐烂的时候,总是会从边缘开始由外向内腐蚀。就是这个意思。原理使用卷积核遍历图像像素值,以卷积核的中心为中心,如果与卷积核对应的像素值全为1(即全是白色),像素值就保持不变。否则与卷积核对应的像素值就全变为0。也就体现出了边缘...

2020-02-19 15:20:13

opencv-python实现简单的颜色识别程序

import numpy as npimport cv2font= cv2.FONT_HERSHEY_SIMPLEXlower_red=np.array([0,127,128])#红色阈值下界higher_red=np.array([10,255,255])#红色阈值上界lower_green=np.array([35,110,106])#绿色阈值下界higher_green=np.a...

2020-02-18 17:25:38

OpenCV学习之路(七)图像模糊|去除噪声

本章将学习一些去除噪声的方法。对以后进行图像识别等操作很有意义。均值滤波道理不咋懂,直接放函数好了cv2.blur(img,size)size为卷积核尺寸import numpy as npimport cv2img=cv2.imread('D://zopencv//ball.jpg')blur=cv2.blur(img,(5,5))mask=cv2.resize(b...

2020-02-18 16:08:22

opencv-python中的cv2.filter()函数随笔

有时候我们想要处理的图像中噪音太多,影响到我们的识别判断,我们就需要对图像进行模糊处理,使图像变得平滑。而opencv-python提供给我们cv2.filter()函数来对图像进行2D卷积,我们可以使用自定义的卷积核来对图像进行卷积操作。构造函数:dst=cv.filter2D(src, ddepth, kernel[, dst[, anchor[, delta[, borderType]...

2020-02-18 15:36:04

OpenCV学习之路(六)图像阈值

在这一章我们将要学习图像阈值的相关知识,包括简单阈值,自适应阈值, Otsu’s 二值化 。简单阈值构造函数为:cv2.threshold(img,thresh,maxval,type,dst=None)参数解释:img是等待进行处理的图像thresh是一个标记,凡是高于(低于)这个阈值的像素值都会被赋予黑色(或者白色)maxval这个值就是高于或者低于thresh时要赋予的值...

2020-02-17 15:34:22

OpenCV学习之路(五)图像的几何变换

在这一章将要学习图像的移动、旋转,仿射变换等扩展缩放我们如果想要改变图像的大小,我们就需要对图像进行扩展缩放,opencv提供给我们控制扩展缩放的函数:cv2.resize(src, dst, interpolation=CV_INTER_LINEAR)参数解释:src:进行扩展缩放的原图片dst:可以在此处设置缩放因子,也可手动设置尺寸interpolation:在缩放时我们推...

2020-02-16 20:21:01

颜色识别各颜色HSV模型的大致范围

2020-02-16 16:48:51

opencv-python按位运算与二值化随笔

阈值二值化灰度图的阈值范围(0–255),0是纯黑色,255是纯白色。越靠近0越黑。在opencv中,我们使用如下函数实现固定阈值二值化threshold(src,thresh,maxval,type,dst=None)src:表示输入图像,注意只能是灰度图thresh:表示要设置的阈值,也是整个函数最关键的参数。maxval当像素值超过阈值或小于阈值(具体根据type来决定)时所...

2020-02-16 16:36:25

OpenCV学习之路(四)图像的基本操作

写在最前:这一章我们将学习图像的基本操作。获取像素值并修改 ,获取图像的属性(信息),图像的 ROI() , 图像通道的拆分及合并理解一些概念图片在计算机中存在形式import cv2img=cv2.imread('D://xidada.jpg')print(img.shape)输出为(795, 1052, 3),分别代表图片的长,宽,通道数(channel)。这表明了图片在计算机中...

2020-02-15 16:35:55

OpenCV学习之路(三)处理鼠标事件

写在最前:本章的目标是学会如何用OpenCV处理鼠标事件,我们将会学会几个函数。OnMouse(event,x,y,flags,param)setMouseCallback(windowsname,OnMouse)这两个函数搭配使用便可以处理鼠标传来的事件并进行相关操作。event表示鼠标事件:EVENT_MOUSEMOVE #滑动EVENT_LBUTTON...

2020-02-15 14:38:17

查看更多

勋章 我的勋章
  • 签到新秀
    签到新秀
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 技术圈认证
    技术圈认证
    用户完成年度认证,即可获得
  • 新人勋章
    新人勋章
    用户发布第一条blink获赞超过3个即可获得
  • 阅读者勋章Lv1
    阅读者勋章Lv1
    授予在CSDN APP累计阅读博文达到3天的你,是你的坚持与努力,使你超越了昨天的自己。
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv4
    勤写标兵Lv4
    授予每个自然周发布9篇以上(包括9篇)原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。