计算机视觉
文章平均质量分 67
蘇丶
这个作者很懒,什么都没留下…
展开
-
Opencv将语义分割标签json文件根据label不同可视化为不同颜色
下面是labelme做好的json标签文件,有不同的label,比如其中一个就是poly_line。还有一些其他的标签,我们只标记polyline,其他的为黑色,polyline为白色。标题import jsonimport cv2import numpy as np# load img and jsondata = json.load(open('1.json'))...原创 2020-02-09 21:38:37 · 4042 阅读 · 1 评论 -
LBP特征Matlab和C实现
LBP特征成为局部二值模式,具有旋转不变性,不受光照影响主要分为一下几个步骤:1.中心点邻域内8个像素,以中心点像素值为阈值,邻域内八个像素值大于中心点像素值即为1,小于中心点像素值即为02.周围八个像素点形成一个八位的二进制串比如11111111,即为255,00000000即为0,所以二进制串再(0,255)范围内3.进行旋转,从左上角开始,然后按顺序进行旋转,形成八个二进制串,然后...原创 2018-11-03 13:01:23 · 6955 阅读 · 6 评论 -
图像色彩增强之python实现——MSR,MSRCR,MSRCP,autoMSRCR
最近在做街景图象色彩校正方面的工作,对于过暗,过曝光,以及背光等现象,用过一些gamma校正以及其他的方法,最终选择基于Retinex原理的方法对这几种现象都有一定的增强效果。最开始的时候是基于Retinex的单尺度的SSR。原理很多博客都解释了,但是感觉看起来很复杂,我感觉就三个步骤:1)将图像进行log变换2)然后将log图像进行高斯模糊3)利用原图和模糊之后的log图像做差分之后很多...原创 2019-03-04 08:35:52 · 38779 阅读 · 82 评论 -
基于双目摄像头SGBM视差图的障碍物提取
基于双目摄像头所拍摄的图像进行障碍物提取,主要分为一下四个步骤:1.双目摄像头校正2.视差图提取3.删除无关干扰区域4.提取障碍物轮廓,重心,大小等属性一丶相机标定相机标定有很多方法,光流自标定,棋盘格标定等,张正友标定法,网上可以了解一下,最后得出相机的一系列参数/*事先标定好的相机的参数fx 0 cx0 fy cy0 0 1*///MATLAB...原创 2019-03-13 21:29:47 · 3984 阅读 · 2 评论 -
低照度图像增强之卷积神经网络RetinexNet
转载请标注:https://blog.csdn.net/weixin_38285131目录一丶Retinex理论——图像分解二丶RetinexNet卷积神经网络1.训练数据说明2.分解网络——Decom3.增强网络——Relight4.结果展示 低照度图像增强一直是计算机视觉领域的一个热门研究方向,之前传统的基于Retinex理论的研究方法已经...原创 2019-03-07 11:14:57 · 38647 阅读 · 58 评论 -
边缘检测算子性能评价Matlab实现之——MSE,PSNR,FOM(品质因数)
利用各种梯度算子,Roberts,Sobel,Canny等算子对灰度图像计算梯度,然后对梯度图像进行性能评价,有很多指标,本博客主要介绍一下MSE,PSNR,FOM的实现,具体原理就不解释了,直接放代码吧一丶计算MSE和PSNRCompute_MSE_PSNR.mfunction [PSNR, MSE] = Compute_MSE_PSNR(Ref_img, goal_img)...原创 2019-03-07 21:30:09 · 9449 阅读 · 4 评论 -
Matlab版Yolov3识别行人(一)——数据标注
Matlab中有很多神经网络工具包,并且有自带的标注工具,用来做深度学习很方便,下面我主要介绍一下标签如何做,用Matlab中APP中的Image Labeler工具进行标注。用的版本为Matlabr2019版本一丶找到Image Labeler二丶导入需要标注的图片三丶创建目标物名字四丶图像目标标注五丶导出标注的mat六丶标注mat解释导出的mat名字叫gTruth,...原创 2019-09-16 20:07:33 · 9616 阅读 · 0 评论 -
labelme教程
1.打开anaconda下面的Anaconda prompt2.输入labelme3. Labelme打开了4.点创建多边形5.然后就描边,最后双击结束6.点save,然后json就保存下来了7.最后ship图片和json分别放在两个文件夹中,名字都一样,一一对应...原创 2019-09-28 15:16:43 · 3886 阅读 · 0 评论 -
EVA改进(点锐度算法)图像清晰度评价方法C++实现
根据王鸿南论文中的方法实现《图像清晰度评价方法研究 》 《图像清晰度评价方法研究 》 跟求梯度没什么区别,只不过是换了一个模板double PVA_Grad(Mat &img){ double P = 0; for (int i = 1; i < img.rows - 1; i++) { //定义行指针 uchar *...原创 2018-07-03 14:31:36 · 4092 阅读 · 3 评论 -
Tenengrad梯度函数清晰度评价C++实现
先放个代码,原理还没来得及写double Thenengrad(Mat &img){ double Grad_value = 0; double Sx, Sy; for (int i = 1; i < img.rows-1; i++) { //定义行指针 uchar *current_ptr = (uchar*)i...原创 2018-07-01 15:31:18 · 5246 阅读 · 1 评论 -
空间射线在普吕克坐标系中的表示
光场(light field)是记录空间中光线的分布,再进行光场拼接时,一根光线同时穿过两个光场的两个平面(sensor和lens),而现有的几篇关于光场拼接的论文都是将光线转换到Pluecker coordinates下,光线在普吕克坐标系下的表征如下:光线R可以由一个(d:m)六列向量表示,即(d1:d2:d3:m1:m2:m3),如一根射线从A(a,b,c)到B(d,e,f),则d=(d-a,原创 2017-07-11 10:50:45 · 922 阅读 · 0 评论 -
RGB颜色查询表
转载自:http://blog.csdn.net/u010997144/article/details/52084386实色效果英文名称R.G.B16色 Snow255 250 250#FFFAFA GhostWhite248 248 255#F8F8FF WhiteSmoke245 245 245#F5F5F5 Gainsboro220 220 220#DCD转载 2017-09-25 11:15:40 · 1954 阅读 · 0 评论 -
将特征点描述子输出成文本
目的:输出其中一对匹配点的描述子成文本txt 方法:ofstream类ofstream outFile1,outFile2;//创建对象outFile1.open("descriptor1.txt");//打开文本outFile2.open("descriptor2.txt"); //输出左边图像的匹配点描述子 for (int n = 0; n < 128; n++)原创 2017-10-10 19:23:05 · 542 阅读 · 0 评论 -
Opencv如何读取矩阵的某一行(从描述子矩阵中读取某一特征点的描述子)
最近在做特征点匹配的时候从特征点描述子矩阵中某一个特征点的描述子时,也就相当于读取描述子矩阵中的某一行。虽然是一个比较简单的问题,写下来为自己的学习做一个记录,如果能帮到别人更好。Mat descriptor;//描述子矩阵 n行128列descriptor.row(i);//读取矩阵的第i行 这样就可以读取某一个特征点的128位描述子了原创 2017-11-20 21:09:33 · 4607 阅读 · 4 评论 -
图像拼接之特征点匹配--距离筛选,余弦角筛选,相似度和ransac筛选
我们在做图像拼接时,最重要的一步就是关于特征点匹配的问题,我们常用到的特征点检测方法有SIFT,SURF以及ORB等,对于特征点匹配我们有Bruteforce方法,Flannbesed方法,这些方法处理完之后,或许特征点匹配效果还是达不到我们想要的结果,这个时候我们需要对我们匹配的特征点进行筛选。下面我来说一说常见的特征点筛选的方法一丶特征点匹配 这里我们用SIFT方法做例子Mat im原创 2018-02-06 12:25:54 · 9935 阅读 · 7 评论 -
Opencv求取连通区域重心
我们有时候需要求取某一个物体重心,这里一般将图像二值化,得出该物体的轮廓,然后根据灰度重心法,计算出每一个物体的中心。 步骤如下: 1)合适的阈值二值化 2)求取轮廓 3)计算重心otsu算法求取最佳阈值 otsu法(最大类间方差法,有时也称之为大津算法)使用的是聚类的思想,把图像的灰度数按灰度级分成2个部分,使得两个部分之间的灰度值差异最大,每个部分之间的灰度差异最小,通过方差的计算来寻原创 2018-03-08 14:49:57 · 11628 阅读 · 8 评论 -
光场相机重聚焦原理介绍及代码解析
光场相机主要是记录了光线的方向和强度,记录了四维信息,因此具有深度信息,并可以实现重聚焦等对焦和变焦聚焦顾名思义,就是聚焦在某一物体上,由于拍照的时候景深问题,不能使所有物体全部清楚,因此可以通过对焦或者是变焦,聚集在某一平面上,使该平面上的物体清晰。对焦就是改变传感器与主镜头的距离来实现这一过程的 ,而变焦改变的是主镜头的焦距实现这一过程,可以自己琢磨一下就能明白。重聚焦公式...原创 2018-05-25 21:25:02 · 17143 阅读 · 39 评论 -
光场相机重聚焦--焦点堆栈深度估计法
上一篇博客中介绍了光场相机重聚焦算法原理介绍,对光场图像进行重聚焦可以聚焦在不同的深度处,使位于不同深度物体清晰,因此,我们可以对光场图像进行重聚焦,然后进行深度估计。光场相机重聚焦原理介绍及代码解析焦点堆栈深度估计法原理介绍计算焦点堆栈每一个像素的梯度,然后对每张图像梯度图像进行均值滤波,然后计算三个通道梯度值的平方和取均值,再开根号,即为该张图像的梯度值,焦点堆栈的同一位置像素...原创 2018-05-27 20:01:24 · 7736 阅读 · 7 评论 -
Pluecker coordinates普吕克坐标系介绍
本文主要介绍了普吕克坐标的表示翻译 2017-07-10 10:50:24 · 7711 阅读 · 0 评论