- 博客(40)
- 资源 (16)
- 收藏
- 关注
转载 图像去雾完结(三)
很久没有更新去雾相关的博客了,第一篇的何凯明博士的暗通道去雾的论文,之前也有实现过,前面的博客有一定的说明,在第一篇去雾系列博客中有相关的算法讲解,都是个人的想法,https://mp.csdn.net/postedit/81915054。但是也没有相关源码的说明,在这里我把去雾的源码发布出来,不过也是其他博主的成果,我只是转载过来的,多谢大家提点。#include <opencv2/...
2019-04-22 13:16:19 1421
原创 windows下简单搭建Tensorflow,keras(GPU)环境
在本文的tensorflow的环境搭建中,所需要提前说明的是,我的安装配置的tensorflow-gpu的版本是1.10.0,且相应的cuda的版本是,提前说明的原因是tensorflow-gpu的安装版本和cuda以及cudnn的版本必须对应且正确。以下则是tensorflow-gpu不同版本的对应的cuda9.0和对应的cudnn7.3的说明图,在这里只提到了GPU版本的配置,相关的CP...
2019-04-22 11:12:20 1264
原创 半年以来的图像去雾总结-图像去雾(一)暗通道去雾
图像去雾最好的算法原型最好的莫过于何凯明博士的论文--好好阅读,必有灵感在接下来的博客中,我会分步介绍各个图像去雾算法的研究和对比,在这里,首先介绍最经典的何凯明博士的暗通道去雾算法了,后面的博客有关于何博士算法的改进,有其他去雾算法的测试对比。暗通道去雾算法暗通道去雾算法,在其他博客都有详细的介绍,在这里我也是借鉴其他各位总结的东西,写点内容。 一、实验原理 ...
2018-08-21 21:38:06 14579 4
原创 opencv项目整合编译Release*64位环境的配置生成exe运行文件
第一步,在VS的属性管理器中,选择Release x 64位,右键属性,配置包含目录和库目录,如下图所示:第二步,在链接器下的输入配置相关路径如下对应的路径如上第三步,这里需要准备动态链接库和依赖库如下:第四步,生成解决方案exe文件,将对应的依赖库和动态链接库放入即可运行如下:第五步,准备相关的文件夹:对应文件夹下由这些文件,点击ex...
2020-07-09 13:10:37 701
原创 tensorflow笔记(1)-- 神经网络优化
有一些基础的神经网络的知识,在前面的一些博客有提及,网上也有很多相关基础的讲解,接下来是基础神经网络下,我觉得较为重要的神经网络的知识和关于改进神经网络的一些理解,当然也是搬运工,很多知识也在其他博客和公开课里面有提及,这里所涉及的大部分知识也是来源于公开课上的知识的一部分总结。神经网络的优化从以下五个方面叙述:1.损失函数2.学习率3.滑动平均4.正则化5.神经网络搭建八股...
2019-08-14 15:46:35 1744
原创 计算机视觉基础系列(python与opencv的操作与运用/tensorflow的基础介绍)(二十八)--- 一个小实验题目
题目:随机产生32组生产出的零件的体积和重量,训练3000轮,每500轮输出一次损失函数。下面我们通过源代码进一步理解神经网络的实现过程:1.导入模块,生成模拟数据集2.定义神经网络的输入、参数和输出,定义前向传播过程3.定义损失函数及方反向传播方法4.生成会话,训练STEPS轮代码如下:import tensorflow as tfimport osimport n...
2019-08-02 10:20:46 292
原创 计算机视觉基础系列(python与opencv的操作与运用/tensorflow的基础介绍)(二十七)--- 完结篇-人脸识别完整流程
首先这个案例很简单,属于浅层次的神经网络,属于一个综合性案例。分别需要以下几个步骤:1.样本收集;2.图像预处理;3.tensorflow神经网络这里对应的就是以下几个知识点:1.python图片的爬虫;2.opencv预处理;3.tensorflow卷积神经网络一、样本收集简单的爬虫使用;视频截取图片,ffmpeg命令行的使用。1.理解爬虫原理,2.实现图片的爬虫:1...
2019-07-31 10:11:34 1696
原创 计算机视觉基础系列(python与opencv的操作与运用/tensorflow的基础介绍)(二十六)---手写数字识别之CNN(2)
首先我们需要知道池化层的作用,上一篇博客有说明,可以点击这里查看。import tensorflow as tfimport numpy as npimport randomfrom tensorflow.examples.tutorials.mnist import input_data # 将input_data用来读取图片# 1.数据装载minst = input_...
2019-07-30 14:26:52 242
转载 计算机视觉基础系列(python与opencv的操作与运用/tensorflow的基础介绍)(二十六)---手写数字识别之CNN(1)
在这里,首先我们需要知道池化层的作用,这里我们先介绍一下,平均池化(mean-pooling)和最大池化(max_pool)的含义和作用。这里的作用是:最直接的目的,就是降低了下一层待处理的数据量。比如说,当卷积层的输出大小是32×32时,如果池化层过滤器的大小为2×2时,那么经过池化层处理后,输出数据的大小为16×16,也就是说现有的数据量一下子减少到池化前的1/4。当池化层最直接的目的达到...
2019-07-29 10:46:12 263
原创 计算机视觉基础系列(python与opencv的操作与运用/tensorflow的基础介绍)(二十五)---手写数字识别之KNN
手写数字识别有两个经典案例,首先是KNN最近领域法和CNN卷积神经网络来做识别。我们从下面几个步骤来准备,1.网络的搭建;2.每一层的输入输出的说明。在这个之前的前提是样本的准备:minst网上很多,直接百度就可以搜到下载,这里附上下载地址:http://yann.lecun.com/exdb/mnist/这里有四个文件夹,下载完放在项目文件夹下解压即可。KNN的核心原理是...
2019-07-25 16:21:45 242
原创 图像去雾(二)Retinex图像增强算法
前一段时间研究了一下图像增强算法,发现Retinex理论在彩色图像增强、图像去雾、彩色图像恢复方面拥有很好的效果,下面介绍一下我对该算法的理解。Retinex理论 Retinex理论始于Land和McCann于20世纪60年代作出的一系列贡献,其基本思想是人感知到某点的颜色和亮度并不仅仅取决于该点进入人眼的绝对光线,还和其周围的颜色和亮度有关。Retinex这个词是由视网膜(Reti...
2019-07-23 14:47:16 35270 12
原创 计算机视觉基础系列(python与opencv的操作与运用/tensorflow的基础介绍)(二十四)---Hog+SVM的识别
训练数据的时候,首先需要做下面几步:1.准备训练样本;2.对样本进行Hog+Svm的训练;3.运用test图片进行预测一、准备样本样本分为正样本和负样本,样本的准备可以运用视频的分帧截取图片存储。这里pos文件夹下包含正样本,包含所检测的目标;neg不包含检测的目标为负样本。样本的准备的时候,图片的尺寸需要注意,这里的尺寸是64x128。样本的获取的手段:1.来源于网络;2.自己收...
2019-07-17 10:02:04 547
原创 计算机视觉基础系列(python与opencv的操作与运用/tensorflow的基础介绍)(二十三)---Hog特征
特征?特征是某个像素经过某种运算得到的结果Hog特征:1.模块的划分 2.根据Hog特征计算梯度和方向(模板特征) 3.bin投影 4.每个模块的Hog特征1.模块的划分这里有四个需要知道的知识点:image:图像模块;windows窗体(可以看作和图像模块大小一样,实际上是要小一些的);block模块,cell模块(下面的蓝色(image,windows窗体),...
2019-07-03 17:15:30 608
原创 计算机视觉基础系列(python与opencv的操作与运用/tensorflow的基础介绍)(二十二)---SVM支持向量机
SVM的本质是寻求一个最优的超平面进行分类,比较简单的分类就是一个直线,很简单,若是多维空间的话就是超平面了,运用的核是线性核。样本准备一般是至少有正样本和负样本两种情况,还要label标签。运用机器学习模块进行创建训练,最后调用预测模块进行预测。下面我们运用学生的身高核体重进行SVM的分类预测。其中0代表女生,1代表男生。# SVM的本质:寻求一个最优的超平面进行分类# SVM核:线...
2019-07-03 10:18:34 253
原创 计算机视觉基础系列(python与opencv的操作与运用/tensorflow的基础介绍)(二十一)---Haar+adaboost分类器实现人脸识别
Haar+adaboost分类器实现人脸识别:其中运用了很多opencv自带的包,然后这里的代码里面都有很详细的注释,可以看一下,最后的效果不是很好,之后会慢慢改进,也运用了opencv里面自带的两个xml文件,一个是检测人脸的xml文件,另外一个是检测眼睛的xml文件,都可以在opencv官网下载的opencv开源包中找到,这里,我上传到csdn上,附上链接可以下载:点击此处跳转,可以下载一...
2019-06-27 14:14:13 668
原创 计算机视觉基础系列(python与opencv的操作与运用/tensorflow的基础介绍)(二十)---adaboost分类器
adaboost分类器Haar特征一般与adaboost分类器在一起运用,在人脸识别上运用较为成熟。adaboost分类的特点是:前一个分类器分出来的样本,在下一个分类器中会得到加强,加强后的样本继续做分类训练作为下一个基本的分类器。例如:三个苹果和一个香蕉,想要通过分类器讲苹果和香蕉区分出来,第一次经过分类器的时候,三个苹果的值为0.1,香蕉为0.5,经过第二个分类器的时候0.5的...
2019-06-27 10:38:24 677
原创 计算机视觉基础系列(python与opencv的操作与运用/tensorflow的基础介绍)(十九)---Haar特征
1 引入机器学习 (Haar的引入)什么是特征?什么是haar特征?特征是:某个区域的像素点经过某种四则运算得到的结果,这个结果可以是一个向量或者其他的各种元素。(具体值,向量,多维的值,矩阵)本质Haar特征:具有特征的本质,但是又是一种特殊的特征描述,如下:有三个大类,基础类型,核心类型,all类型。这十四个类型特征,这里的特征描述是:特征的公式推导公式...
2019-06-27 09:48:13 444
原创 计算机视觉基础系列(python与opencv的操作与运用/tensorflow的基础介绍)(十八)---直方图均衡化源码
1 灰度图的直方图均衡化灰度直方图的均衡化的过程是一个累计概率完成映射的过程,举个例子:像素0-100的概率累计相加得到0.5,则用255*0.5进行映射得到50来代替这个100这个像素值。又相应的API,这里就不做API的代码了,我们写均衡化的源码,代码如下:import cv2import numpy as npimg = cv2.imread('1.jpg', 1)cv2...
2019-06-26 09:47:03 407
原创 计算机视觉基础系列(python与opencv的操作与运用/tensorflow的基础介绍)(十七)---直方图处理源码
1 灰度直方图的源码灰度直方图的本质:统计每个像素灰度出现的概率,横坐标0-255,纵坐标是出现的概率值为0-1。代码如下:import cv2import numpy as npimport matplotlib.pyplot as pltimg = cv2.imread('1.jpg', 1)cv2.imshow('src', img)imgInfo = img.sha...
2019-06-25 14:44:45 249
原创 计算机视觉基础系列(python与opencv的操作与运用/tensorflow的基础介绍)(十四)---浮雕效果和颜色映射
1 浮雕效果浮雕效果和边缘效果一样,也是需要求梯度的过程计算公式:newP = gray0 - gray1 + 150,即,灰度图中,相邻的两个像素值之差加上150即为新的像素值代码实现如下:import cv2import numpy as npimport mathimg = cv2.imread('1.jpg', 1)info = img.shapecv2.ims...
2019-06-25 10:50:00 217
原创 计算机视觉基础系列(python与opencv的操作与运用/tensorflow的基础介绍)(十五)---直方图
1 直方图的引入opencv在图像处理方面的基础应用,彩色图像的相关知识和技术以及直方图的均衡化和规定化的原理是必须提前掌握。直方图的概念,横坐标表示像素值0-255的值,纵坐标表示像素值在整个图像中的概率是多少,值在0-1之间。直方图均衡化:一张图的直方图没有均匀分布,可以使用均衡化方法,尽可能的离散化,则称为直方图的均衡化下面是直方图的代码:import cv2impo...
2019-06-25 10:42:44 221
原创 计算机视觉基础系列(python与opencv的操作与运用/tensorflow的基础介绍)(十三)---图像的融合和边缘检测
1 图像融合被叠加的两张图片的大小、类型(高度/宽度/通道数)必须相同。但是如果这两张图片大小不相同,有什么方法解决?具体解决方法请点击此处查看1.1cv2.add(img1,img2):直接对两张图片作加法运算Numpy中可以直接用res = img1 + img2相加,但这两者的结果并不相同,因为OpenCV中的加法运算是饱和运算(就是当运算结果大于一个上限或小于一个下限时,结...
2019-06-24 12:17:58 842
原创 计算机视觉基础系列(python与opencv的操作与运用/tensorflow的基础介绍)(十二)---图片的颜色反转和马赛克效果
一、图片的颜色反转图片的颜色反转分为灰度图像的颜色反转和彩色图像的颜色反转:灰度图像的颜色反转,比较简单一点,因为它的颜色空间只有一层,只需要用255-mat[i,j](灰度图该点的像素值)存储到新的矩阵中即可。彩色图像的颜色反转,则需要知道的是彩色图像是有三个颜色空间的,也就是说它的深度为3,则需要将每个像素点对应的RGB的值与255相减即可,接下来是代码截图:灰度图的颜色反转:...
2019-06-14 11:25:48 405
原创 计算机视觉基础系列(python与opencv的操作与运用/tensorflow的基础介绍)(十一)---图片的灰度处理
一、图片的灰度化处理图片的灰度化的原理:这个灰度化,可以通过调用API进行灰度化处理,也可以通过图片的像素操作,对图片进行灰度化处理。方法一:用imread读取的时候,设置后面的参数为0。eg:img=imread('1.jpg',0),0代表是灰度图片,且灰度图片的深度信息为1,而彩色图片为3,这里的0->1则代表读取的是彩色图片。方法二:用cvtColor进行灰度转...
2019-06-14 10:23:30 476
原创 计算机视觉基础系列(python与opencv的操作与运用/tensorflow的基础介绍)(十)---图片的仿射变换和旋转
一,图片的仿射变换图片的仿射变换,需要根据图片的左上角,右下角及右上角来进行变换。解析来就是代码部分:import cv2import numpy as npimg = cv2.imread('1.jpg', 1)info = img.shapecv2.imshow('src', img)height = info[0]width = info[1]# 寻找图片的左上角...
2019-06-14 09:59:20 2483
原创 计算机视觉基础系列(python与opencv的操作与运用/tensorflow的基础介绍)(十六)---图片的镜像
镜像操作,可以看作是图片的翻转操作,其原理是:实现的步骤是(1.创建一个足够大的“画板”,2将一副图像分别从前向后、从后向前绘制,3绘制中心分割线)新建一个Y轴的坐标,整个Y的高度是图片的高度的两倍。代码为:import cv2import numpy as npimg = cv2.imread('1.jpg', 1)info = img.shapecv2.imshow('src...
2019-06-13 11:02:13 302
原创 计算机视觉基础系列(python与opencv的操作与运用/tensorflow的基础介绍)(九)---图片的剪切和移位
图片的剪切:import cv2img = cv2.imread('1.jpg', 1)info = img.shapedst = img[100: 200, 100: 300] # 分别是高和宽cv2.imshow('img', img)cv2.imshow('dst', dst)cv2.waitKey(0)代码很简单,就不做详细记录了,最终的显示是:...
2019-06-13 10:45:11 240
原创 计算机视觉基础系列(python与opencv的操作与运用/tensorflow的基础介绍)(八)---小例子(神经网络逼近股票收盘价格)
这里我们运用简单的神经网络模拟一下股票的收盘价格,是一个学习的示例。首先要知道,股票曲线图的参数意义:这个曲线图主要记录股票的开盘价格和收盘价格,如果开盘价格低于收盘价格,那么证明这个股票在增长,每天的规律如此,所以,在下面,首先定义股票价格的坐标图如下:import tensorflow as tfimport numpy as npimport matplotlib.py...
2019-06-12 17:06:50 373
原创 计算机视觉基础系列(python与opencv的操作与运用/tensorflow的基础介绍)(七)---matplotlib画图工具
import numpy as npimport matplotlib.pyplot as pltx = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9, 0])y = np.array([1, 3, 4, 6, 7, 2, 13, 24, 6, 19])plt.plot(x, y, 'r') # 折线图,第一个参数是x坐标轴,第二...
2019-06-12 15:22:43 232
原创 计算机视觉基础系列(python与opencv的操作与运用/tensorflow的基础介绍)(六)---tensorflow的矩阵基础
矩阵基础:placehold首先来个示例代码进行开始:import tensorflow as tfdata1 = tf.placeholder(tf.float32)data2 = tf.placeholder(tf.float32)dataAdd = tf.add(data1, data2)with tf.Session() as sess: print(sess.r...
2019-06-12 10:39:08 192
原创 计算机视觉基础系列(python与opencv的操作与运用/tensorflow的基础介绍)(五)---tensorflow的运算
tensorflow的运行机制:其中tensor就是我们所说的变量等等,而op则是operation是我们常常运用的四则运算法则和赋值操作等等。graphs则是数据操作的过程,就是这些组成了tensorflow。那么tensorflow怎么运算的呢?所有的计算图必须放在session会话中运行,session这是运算的核心。其实初始化操作也可以看作是一个计算图。常见的加减乘除运算再te...
2019-06-11 17:40:02 190
原创 计算机视觉基础系列(python与opencv的操作与运用/tensorflow的基础介绍)(四)---tensorflow的变量和常量
tensorflow里面。在运用的时候,变量必须要经过初始化之后才可以运用,常量可以直接运用,但是在运用的时候必须要经过会话Session之后才可以打印出来,而初始化之后也必须要执行会话才可以生效,然后再进行Session会话进行打印,如下代码所示:import tensorflow as tfdata1 = tf.constant(2, dtype=tf.int32) #...
2019-06-11 17:14:15 170
原创 计算机视觉基础系列(python与opencv的操作与运用)(三)--像素操作
每个图片可以看作很多个有颜色的小方块组合而成的,而每一个像素点的小方块的颜色,可以看作是三个颜色RGB进行合成的,颜色深度又是指的是8bit,即0-255,图片的宽高又是指的是图片在横轴和纵轴分别有多少个像素,图片大小又是从何而来的呢:1.14M = 720(长)* 547(宽)*3*8bit/8 (B) = 1.14M而在png图片中可能还存在着第四个通道,即为图片的颜色透明度alph...
2019-06-11 16:52:25 243
原创 计算机视觉基础系列(python与opencv的操作与运用)(二)--图片压缩
本次所写的东西很简单,也许你需要用的时候还感觉比较有用,若是没有太大用处的时候则的确没有太大作用,这里将它作为储备知识记下来。图片太大,有时太占空间,则这里就需要压缩图片的体积进行存储,这里压缩图片存储的方式主要说一下常见的两种压缩方式和它们之间的区别。平时存储的图片文件一般为png或者是jpg文件,在这里有以下代码辅助说明import cv2img = cv2.imread('1...
2019-06-11 16:29:47 364
原创 数据结构与算法(一)---python开头的引入,后面会有部分python和C++的穿插
1.引入首先让我们来做个题进入主题:如果a+b+c=1000,且a^2+b^2=c^2(a,b,c为自然是),如何求出所有的a,b,c可能的组合?最基础的代码,不能用公式等,不用其他包。由题目得出:只能一个个的数字带进去试,这种方法叫做枚举法,也是最傻瓜的方法。即a,b,c分别从0开始,a=0时,b=0时,c取值0~1000,当a+b+c=1000时,计算a*a+b*b是不是等于c*c...
2019-05-20 19:57:43 199
原创 endnote配置运用
1.下载endnote在官网上下载endnote,或者在我的网盘中下载链接:https://pan.baidu.com/s/1Jr0WX6ExK-hCfo6vF46Rpw提取码:4zf9下载后安装,都是下一步傻瓜式安装2.运用geebinf modified by zz格式在我的网盘中下载geebinf modified by zz格式文件链接:https:/...
2019-04-22 11:59:03 2098
原创 计算机视觉基础系列(python与opencv的操作与运用)(一)--环境配置
一、系列博客所使用的编译环境(不用必须一样,但是必须都是3.0以上版本):OpenCV 3.4 Python 3.5二、环境配置这里需要注意的是版本问题,opencv和python的版本都必须是3.0以上的版本,在opencv和python中,opencv2和opencv3不同之处还是比较多的,且在python中,python2.0和python3.0的版本的代码差别也有一些...
2019-03-11 15:40:09 494
大气消光系数去雾算法总结,承接上一篇传的去雾算法每个人理解总结
2018-08-29
设计模式大作业游戏
2018-05-24
物流管理系统设计
2018-05-16
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人