视觉/图像处理opencv
文章平均质量分 85
denghe1122
不知道你身边有没有这样一种人,明明已经百里挑一,还觉得基数太小;明明已经出类拔萃,还觉得炮灰太少。每天像缺钱一样勤奋,像欠债一样努力。每每遇到这样的人,我都会问一句:为什么?
展开
-
OpenCV(七) Opencv中 core 核心模块详解—提取感兴趣区域Roi
有时候,我们需要对图像中某个重点区域进行提取,侧重分析。选择感兴趣区域大致有三种方法:(1)、利用 Rect 类设定感兴趣区域;(2)、利用 Range 指定感兴趣区域的行、列范围;(3)直接利用鼠标圈选感兴趣区域。 1、利用Rect类设定感兴趣区域 这种方法指定了感兴趣区域左上角的x,y 坐标和矩形的长宽。 具体用法:Mat image_roi ; img_roi = srcimag原创 2017-08-07 10:10:09 · 1719 阅读 · 0 评论 -
ubuntu 14.04 下同时安装OpenCV2.4.8和OpenCV3.2,版本共存切换
由于实验室需要用到ROS,在安装ros-indigo的时候,系统默认安装了 OpenCV2.4.8版本,直接使用还挺好的。但是,科研需要与时俱进啊,新版的OpenCV3.0以上集成了好多新的功能。比如说,近两年很火的目标跟踪算法KCF、Goturn算法等,都在OpenCV3.1中集成了,直接使用比较方便。但是,ros系统的运行,需要2.4.8版本中的一些比如CV_BRIDGE,所以,2.4.8版本原创 2017-09-07 08:51:19 · 3647 阅读 · 0 评论 -
数字信号处理——卷积
形象的解释: 就常识上来讲,系统的响应,不仅与当前时刻系统的输入有关,还有之前的若干输入有关。也就是说,每一个输入信号都会对输出值产生影响,但影响的程度不尽相同,而这个影响程度的大小,就是权值,也就是卷积核(图像处理中,称之为卷积滤波器)。将每一个输入信号乘以权值,然后叠加,就得到了最后的输出响应。 在现实生活中,卷积是有诸多种意义的,比如增加、合成或者旋转等。不用去深原创 2017-12-19 20:09:53 · 12516 阅读 · 0 评论 -
图像的频率
Abstract Although not commonly used, correlation filters can track complex objects through rotations, occlusions and other distractions at over 20 times the rate of current state-ofthe-art techni原创 2017-12-20 14:36:51 · 18193 阅读 · 2 评论 -
图像的傅里叶变换与图像的能量分布——再探
有这样一段话,刚开始不好理解:根据傅里叶变换理论原创 2017-12-26 20:24:18 · 17912 阅读 · 3 评论 -
单目摄像头标定参数相关说明
转载于:http://blog.csdn.net/xuelabizp/article/details/503146331.针孔摄像机模型在介绍摄像机标定参数之前,需要先简单说一下针孔摄像机的原理。投影平面到小孔的距离为焦距f,物体到小孔的距离为Z,其中物体和投影是倒立相似的关系,下图为针孔摄像机的投影示意图:如果按照实际的投影关系建立坐标系,那么投影坐标和物体坐转载 2018-01-05 13:51:02 · 3560 阅读 · 0 评论 -
ROS 下利用 usb_cam 读取图像、opencv 图像、摄像头的标定
最近导师让我做一个小项目:检测汽车的充电孔与充电桩的的距离(x,y,z)和角度。为了控制成本,扔给我一个淘宝上十几块钱的摄像头。检测和计算部分再此不细说,本文只总结一下,一个普通的摄像头,如何在 ubuntu 下写一个 ROS 包,将图像读取和发布出来。 1、判断摄像头的类型 在 ROS 中,有两类,一类是 uvc,一类是 usb 。不同类别对应不同的软件包。以我这个摄原创 2018-01-05 18:11:38 · 12359 阅读 · 1 评论 -
caffe blob类用法详解
此部分内容参考了三人的博客,写的东西有相同之处和不同之处,互相补充吧. 1. 转载链接:http://blog.csdn.net/chenriwei2/article/details/46367023 主要功能:Blob 是Caffe作为数据传输的媒介,无论是网络权重参数,还是输入数据,都是转化为Blob数据结构来存储,网络,求解器等都是直接与此结构打交道的。转载 2017-09-18 14:12:57 · 12003 阅读 · 0 评论 -
caffe nat 类代码分析详解
Net类是Solve类的一个成员,主要功能// Net connects Layers together into a directed acyclic graph (DAG) specified by a NetParameter,to achieve // initialization through layer by layer, and provide Update () interfa转载 2017-09-18 10:05:05 · 1769 阅读 · 0 评论 -
基于深度学习的目标检测技术演进
作者:Madcola来源:https://www.cnblogs.com/skyfsm/p/6806246.htmlobject detection我的理解,就是在给定的图片中精确找到物体所在位置,并标注出物体的类别。object detection要解决的问题就是物体在哪里,是什么这整个流程的问题。然而,这个问题可不是那么容易解决的,物体的尺寸变化范围很大,摆放物体的角度,姿态不定,而且可以出现...转载 2017-09-05 08:54:07 · 2247 阅读 · 0 评论 -
TLD目标跟踪算法详解(二)学习器Learning (跟踪器与检测器的协调与更新)
原文链接:http://blog.csdn.net/wood_water/article/details/9023151 在上一篇跟踪器与检测器(tracker and detector)中,我们已经详细介绍了TLD中跟踪器与检测器的设计方案,而在具体运行过程中需要对二者进行调和,所谓调和主要指两方面:1.对二者输出的结果综合考虑,选择最有可能的作为最终的输出。2.当目标跟...转载 2017-09-03 21:55:28 · 2667 阅读 · 0 评论 -
TLD算法详解(一)前言 + 跟踪器与检测器的设计
原文:http://blog.csdn.net/wood_water/article/details/9017681。本文略微做了增减等修改。 TLD是英国Surrey大学的Zdenek Kalal发表在PAMI2012年七月刊的一篇文章,主要贡献在于将跟踪与检测结合在一起,实现了工程上可应用的实时跟踪程序。而本篇文章其实是对ZK 在 2009年的paper:Online learni...转载 2017-09-03 21:52:12 · 3066 阅读 · 0 评论 -
基于RNN的在线多目标跟踪——OnLine Multi-Target Tracking Using Recurrent Neural Networks
论文链接:https://arxiv.org/pdf/1604.03635.pdf由于在 CSDN 上编辑公式太麻烦,所以,我把翻译内容整理到文档上,然后发截图1、背景简介 无限制环境下的多目标跟踪仍然是一个具有挑战性的任务。即使经过几十年的研究,但跟踪的准确性远远达不到人类的标准。随着近些年来,深度学习的兴起,与多目标跟踪的有关的工作依然很少。这篇文章,我们在实际场景中对多翻译 2017-09-18 15:56:58 · 8195 阅读 · 2 评论 -
KCF目标跟踪代码及注释
代码链接在这tracker.h:定义Tracker类[cpp] view plain copy #pragma once #include #include class Tracker { public: Tracker() {} virtual ~Tracker() { } virtua原创 2017-09-20 09:43:33 · 16528 阅读 · 11 评论 -
SSD 源码分析
1、将随机数字去重+排序程序如下: bool comp(const int &s1, const int &s2) { return s1 < s2; }int main(){ int num_total,num; int a[1000] = {0}; // 注意:此时的下标索引不再仅仅是0~9的数字了,而是一个数,可能很大 cin >> num_total;原创 2017-08-22 08:40:26 · 2041 阅读 · 3 评论 -
孔径问题(aperture problem)
转载于:http://mmdays.com/2008/04/17/aperture_problem/各位经过理发店的时候,或许都会注意到理发店有一个卷轴,卷轴不停旋转,但是看起来会像是有一圈圈的条纹往上移动。今天要和各位介绍的是另外一个类似的错觉,叫做「孔径问题」 (Aperture Problem)。图1 理发店卷轴错觉何谓孔径问题呢?我们可以先看看下面这个动画: 图...转载 2018-08-16 19:01:35 · 7520 阅读 · 0 评论 -
由浅入深理解傅里叶—— 看完你还不懂的话,你可以回来掐死我(原作者说的,要掐掐死他)
最近,一直在研究视觉追踪图像处理,其中傅里叶变换是非常重要的一环。单单只是会使用OpenCV里面的库函数,感觉是远远不够的,所以对傅里叶变换进行了研究。无意间发现了原来作者的一篇技术博客,看完以后,醍醐灌顶。在此给大家分享一下。我主要修改了两个地方:1)文章中卖萌的语句,我给删除了,可能是我欣赏不来。2)文章中一些动图,我给做了显示。 原文链接如下:https://zhuanlan.转载 2017-09-26 19:59:51 · 1916 阅读 · 0 评论 -
傅里叶变换推导
http://blog.csdn.net/linmingan/article/details/51194187注:文章中有一两处公式错误,(1)辅助角公式中求幅值应该是平方开根号,(2)sin()函数的欧拉表示公式中,应该是除以2i。本文参考的博客[1]:http://www.360doc.com/content/13原创 2017-11-13 17:36:25 · 1833 阅读 · 0 评论 -
win7系统下VS2013安装配置OpenCV 3.0
OpenCV 3x系列比OpenCV 2.x系列配置方便地多。本文就在win7系统下,VS2013环境下配置OpenCV 3.0原创 2017-08-01 16:48:46 · 1339 阅读 · 1 评论 -
OpenCV (二) 一个linux系统下的OpenCV安装配置及编程模板(提供下载链接)
在网上,windows 结合 VS 配置opencv 的博客比比皆是,但是基于 linux 安装配置 opencv 的较少。这个安装是非常简单的,只需要安装几个依赖项,在此不细说。我是在UBUNTU 14.04 下安装了 ROS (Indigo版本),opencv 是一并安装的。这里是 OpenCV 2.7 版本。 安装好了 opencv 后,如何快速建立程序包(类似于windows原创 2017-08-04 09:56:49 · 1156 阅读 · 0 评论 -
OpenCV(一) 主要模块及结构功能简述
OpenCV 是开源的计算机视觉库,它实现了图像处理和计算机视觉方面很多通用的算法(比如卡尔曼滤波、TLD 目标跟踪算法、BING算法等等)原创 2017-08-03 21:29:43 · 4487 阅读 · 0 评论 -
OpenCV(三) Opencv中 core 核心模块详解—— Mat类(一)
之前列举了 OpenCV 中的12 个模块。现在对于每一个模块一一讲述,从 core 模块开始原创 2017-08-04 11:22:03 · 3804 阅读 · 3 评论 -
OpenCV(四) Opencv中 core 核心模块详解—— Mat类(二)之常见函数及操作
本次,介绍 Mat 类的常见操作。原创 2017-08-04 16:55:02 · 1969 阅读 · 0 评论 -
OpenCV(六) Opencv中 core 核心模块详解——访问图像像素的几种方法
介绍图像,当然要介绍如何访问图像的像素了~~原创 2017-08-05 14:25:16 · 1510 阅读 · 0 评论 -
OpenCV(五) Opencv中 core 核心模块详解—— 常见的数据结构
今天,虽然是周六,但是仍然要学习啊,,我这个菜鸟啥时候才能变大神啊,哎~~下面开始介绍 Opencv 中常见的类和函数原创 2017-08-05 10:34:36 · 3075 阅读 · 0 评论 -
opencv3.0中的无缝克隆图像——seamless_cloning(Poisson Image Editing)
opencv3.0 photo 模块加入了seamless_cloning类。该类对应的论文是“Poisson Image Editing”主要可以实现一下功能:seamless clone:纹理传输:去除光噪:等等。本文主要以normal_clone为例, 从代码层面解释整个流程:转载 2017-09-06 09:53:07 · 7090 阅读 · 0 评论 -
视频转换成图像序列、图像转换成视频(代码)
在目标检测领域,经常碰到将视频转换成图像序列,或者将图像序列转成视频。下面一段代码可实现此类功能。废话不多说,直接上代码void Video2Pic() { cv::VideoCapture vc; bool flag = vc.open("G:\\20140524\\S1050003.MP4"); if (!flag) {原创 2017-09-24 11:30:28 · 6705 阅读 · 1 评论 -
三帧差法运动目标检测代码及注释
代码及注释仅供参考。int CallTime = 0;//定义调用次数计数器 IplImage* BackGroundImage;//上一帧灰度图 IplImage* DiffImage_1;//上一帧差分图的二值化图 void ThreeFrmDiff(IplImage* pColorIn) { CallTime++; if(CallTime >原创 2017-09-23 16:29:40 · 3178 阅读 · 0 评论 -
行人检测综述
PART Ifrom: http://www.cnblogs.com/molakejin/p/5708791.html行人检测具有极其广泛的应用:智能辅助驾驶,智能监控,行人分析以及智能机器人等领域。从2005年以来行人检测进入了一个快速的发展阶段,但是也存在很多问题还有待解决,主要还是在性能和速度方面还不能达到一个权衡。近年,以谷歌为首的自动驾驶技术的研发正如火如荼的进行,这也迫转载 2017-09-15 09:14:37 · 25936 阅读 · 0 评论 -
图像处理中的卷积和滤波详解
本文主要介绍了图像处理中卷积和滤波的相关原理。一、线性滤波与卷积的基本概念 线性滤波可以说是图像处理最基本的方法,它可以允许我们对图像进行处理,产生很多不同的效果。做法很简单。首先,我们有一个二维的滤波器矩阵(有个高大上的名字叫卷积核)和一个要处理的二维图像。然后,对于图像的每一个像素点,计算它的邻域像素和滤波器矩阵的对应元素的乘积,然后加起来,作为该像素位置的值。这样就完成转载 2017-09-25 11:18:57 · 3976 阅读 · 0 评论 -
核函数与径向基函数 (Radial Basis Function 简称 RBF)详解
转载于 :http://blog.csdn.net/huang1024rui/article/details/515106111.核函数1.1核函数的由来-----------还记得为何要选用核函数么?-----------对于这个问题,在Jasper's Java Jacal博客《SVM入门(七)为何需要核函数》中做了很详细的阐述,另外博主对于SVM德入门学习转载 2017-09-27 09:26:21 · 26833 阅读 · 1 评论 -
RGB颜色空间与Lab颜色空间区别与联系(附转换代码)
RGB颜色空间RGB颜色是红色(Red)、绿色(Green)和蓝色(Blue)三基色的字母缩写。RGB色彩模式是通过三种基本颜色的不同程度的迭加来产生各种各样的不同颜色。这个标准能够涵盖人类视力所能感知的所有颜色,是目前运用广泛的颜色系统之一。RGB(red,green,blue)颜色空间最常用的用途就是显示器系统,彩色阴极射线管,彩色光栅图形的显示器 都使用R、G、B数值来驱动R、G原创 2017-09-19 16:47:00 · 12158 阅读 · 0 评论 -
Ros图像与Opencv图像的相互转换(C++)
Ros图像与Opencv图像的相互转换(C++)(译文*来自wiki)(ROS为indigo版本)摘要:此教程通过将ROS图像转换为OpenCV图像讲解了使ROS与OpenCV相结合的方法。教程包含一个示例节点,可以用作自己的节点模板。关键词:ROS图像,OpenCV图像,CVBrideg教程等级:中等难度1.综述 ROS有其自己的消息格式为sensor_ms原创 2017-10-26 11:19:01 · 3040 阅读 · 0 评论 -
余弦窗(汉宁窗)的作用——图像预处理
1.MOSSE(Visual Object Tracking using Adaptive Correlation Filters)3.1 Preprocessing(文章原处) : One issue with the FFT convolution algorithm is that the image and the filter are mapped to the topol原创 2017-09-25 15:12:53 · 22184 阅读 · 1 评论 -
迁移学习
Domain Adaptive(特征层面)继Jason Yosinski在2014年的NIPS上的《How transferable are features in deep neural networks?》探讨了深度神经网络的可迁移性以后,有一大批工作就开始实际地进行深度迁移学习。简要回顾一下Jason工作的重要结论:对于一个深度网络,随着网络层数的加深,网络越来越依赖于特定任务;而浅层相对...转载 2019-01-18 10:21:57 · 2454 阅读 · 0 评论