Opencv/Openal/Opencl
文章平均质量分 94
xiaojun11-
勤能补拙,奋发ing
展开
-
利用OpenCV检测图像中的长方形画布或纸张并提取图像内容
基于知乎上的一个答案。问题如下:也就是在一张照片里,已知有个长方形的物体,但是经过了透视投影,已经不再是规则的长方形,那么如何提取这个图形里的内容呢?这是个很常见的场景,比如在博物馆里看到一幅很喜欢的画,用手机找了下来,可是回家一看歪歪斜斜,脑补原画内容又觉得不对,那么就需要算法辅助来从原图里提取原来的内容了。不妨把应用的场景分为以下:纸张四角的坐标(图中红点)已知的情况转载 2015-02-02 12:56:16 · 2626 阅读 · 5 评论 -
OpenCV训练分类器制作xml文档
我的问题:有了opencv自带的那些xml人脸检测文档,我们就可以用cvLoad()这个函数加载他们,让他们对我们的人脸进行检测,但是,现在生活中的计算机视觉并不远远是检测人脸,还有很多物品需要识别,所以,能不能自己做个xml的检测文档,用它来检测自己需要的东西呢?例如,检测一个可乐瓶!问题解决:首先了解下,目标检测分为三个步骤:1、 样本的创建2、 训练分类器3、 利用训练好转载 2015-02-27 18:07:25 · 602 阅读 · 0 评论 -
图像处理-平滑和锐化
1.平滑(smoothing)先举个例子说明一下什么是平滑,如下图所示:图像平滑,锐化(转)" alt="数字图像处理学习笔记1- 图像平滑,锐化(转)" src="http://s10.sinaimg.cn/middle/6c083cdd495b316784ce9&690">可以看到,图2 比图1 柔和一些(也模糊一些)。是不是觉得很神奇?其实实现起来很简单。我们将原图中的每一点转载 2015-03-02 16:07:31 · 23137 阅读 · 3 评论 -
图像的膨胀与腐蚀、细化
摘自: http://www.cnblogs.com/slysky/archive/2011/10/16/2214015.html原理:在特殊领域运算形式——结构元素(Sturcture Element),在每个像素位置上与二值图像对应的区域进行特定的逻辑运算。运算结构是输出图像的相应像素。运算效果取决于结构元素大小内容以及逻辑运算性质。结构元素:膨胀和腐蚀操作的最基本组成部分,用转载 2015-03-03 18:06:04 · 1266 阅读 · 1 评论 -
如何将BGR转成YUV420
摘自:http://www.rosoo.net/a/201102/10948.html写了一个程序可以把openCV的BGR图像格式转换成YUV4:2:0,然后通 过FFmpeg的API把YUV4:2:0的图像编码压缩,最后利用live555把压缩后的buffer打包成RTP包,最后用Unicast将它们发 送出去。简单的说就是 BGR—>YUV4:2:0—>encode to b...转载 2015-03-13 15:13:02 · 4005 阅读 · 0 评论 -
OpenCL入门程序
以前就听说OPenCL,今天就特地使用了一下,我的机器是N卡,首先装上了CUDA的开发包,由于CUDA对OPenCL支持比较好,就选择了N卡上的GPU并行计算。 OPenCL是一个开放的标准和规范,全程是开放计算库,主要是发挥计算机的所有计算资源,包括CPU、GPU、多核等。所以说OPenCL是一个跨硬件和软件平台的开放标准,在此框架下开发的并行计算程序很容易就能移植到其他平台上,也许转载 2014-12-13 16:52:25 · 1000 阅读 · 0 评论 -
openal的借鉴
因为之前在原公司上班的时候,用过openAL来播放PCM实时数据流.现在换了新公司又要求我用自己的方法写个音频播放器.我就选用这openAL H-,RzL/ 但是这次使用openAL的时候,就没之前那么顺了,哎,说多了都是泪啊~~~附上自己写的部分算是重要的代码,给大家分享一下,也好帮助:J}@*>c 新手少走些误区,或者是能够快速定位究竟是错在哪里。代码如下:pQ Y.MZSA I...转载 2015-03-05 16:47:16 · 1159 阅读 · 0 评论 -
openal 简单实用
这是一个快速的入门教程,将教你使用OpenAL播放音乐的最少步骤。OpenAL主要由3个实体构成:听众Listener, 声源Source, 以及缓存Buffer。听众Listener:就是你。Listener的位置是可以移动的。声源Source:类似一个话筒。它发出声音给听众听。和Listener一样,声源的位置也是可以移动的。例如oalTouch中实现了声音远近的控制(近响远轻),就是通过Li...转载 2015-03-06 17:45:18 · 910 阅读 · 0 评论 -
Gamma矫正原理
图2中左图为原图,中图为gamma = 1/2.2在校正结果,原图中左半侧的灰度值较高,右半侧的灰度值较低,经过gamma = 1/2.2校正后(中图),左侧的对比度降低(见胡须),右侧在对比度提高(明显可以看清面容),同时图像在的整体灰度值提高。右图为gamma = 2.2在校正结果,校正后,左侧的对比度提高(见胡须),右侧在对比度降低(面容更不清楚了),同时图像在的整体灰度值降低。转载 2017-04-12 15:17:49 · 906 阅读 · 0 评论 -
linux中安装opencv with ffmpeg and with python
1、安装ffmpeg, 并设置export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig 2、安装opencv,使用cmakecmake -D WITH_FFMPEG=ON -D CMAKE_INSTALL_PREFIX=/usr/local .3、安装过程时间可能会有点长10~30分钟左右,编译完成之后OpenCV就安装到了指定的/us原创 2017-06-05 11:10:40 · 2422 阅读 · 0 评论 -
OpenCV颜色识别
转载自:http://blog.csdn.net/liuqz2009/article/details/47623399彩色模型数字图像处理中常用的采用模型是RGB(红,绿,蓝)模型和HSV(色调,饱和度,亮度),RGB广泛应用于彩色监视器和彩色视频摄像机,我们平时的图片一般都是RGB模型。而HSV模型更符合人描述和解释颜色的方式,HSV的彩色描述对人来说是自然且非常直观的。转载 2017-06-28 18:51:50 · 504 阅读 · 0 评论 -
通俗易懂-形态学概念介绍
形态学现在学完基本的几个了,但我还是不知道什么是形态学!原理其实就是和“卷积”在图像处理中的应用一样,就是一个“内核”遍历图像之后进行处理,内核的不同使得处理得到的图像效果也是不同的。下面介绍几种形态学滤波原理你就懂了:注->RGB:0-255,0代表黑色,255代表白色腐蚀:腐蚀的顾名思义就是一个东西变黑变坏变烂了,那么简单的理解就是把大于0的像素都都变得接近0就行了啊!转载 2017-06-29 10:23:26 · 3894 阅读 · 0 评论 -
彩色图转灰度图的原理和注意事项
图像处理中,大部分的处理方法都需要事先把彩色图转换成灰度图才能进行相关的计算、识别。彩色图转换灰度图的原理如下:我们知道彩色位图是由R/G/B三个分量组成,其文件存储格式为BITMAPFILEHEADER+BITMAPINFOHEADER,紧跟后面的可能是:如果是24位真彩图,则每个点是由三个字节分别表示R/G/B,所以这里直接跟着图像的色彩信息;如果是8位(256色)转载 2015-02-27 10:43:36 · 8070 阅读 · 0 评论 -
opencv的牛人博客
1、 http://blog.sina.com.cn/s/articlelist_1293879682_0_2.html 新浪博客 关于:相关处理的论坛 心在仰望-教授1/2作家2、http://blog.csdn.net/yang_xian521原创 2015-02-06 10:12:09 · 593 阅读 · 0 评论 -
opencv的图像处理方法
图像显示:Bayer抖动显示Floyd-Steinberg抖动显示图像增强:灰度变换直方图均衡局部平均平滑中值滤波理想低通滤波Butterworth低通滤波图象锐化理想高通滤波Butterworth高通滤波伪彩色增强图像复原:运动模糊运动模糊复原逆滤波退化逆滤波复原加噪退化维纳滤波复原图像变换:傅立原创 2015-02-13 14:29:54 · 1224 阅读 · 0 评论 -
OpenCV学习笔记(一)——安装配置、第一个程序
决心开始研究OpenCV。闲言少叙,sourceforge网站最近的版本是2011年8月的OpenCV2.3.1,下载安装,我这里使用的开发环境是vs2008,网上搜了一下配置的教程,与之前的几个OpenCV版本的配置过程大体相同:(教程网上很多,知之为知之,不知百度之,我这里粗略再讲一下)1. 配置电脑的环境变量(Path变量)这里我的是D:\Program Files\OpenCV2.转载 2015-02-02 14:04:40 · 552 阅读 · 0 评论 -
边缘检测
对图像灰度求梯度,梯度大的就是边缘了。但毕竟图像是离散化的,可以使用另外的方法求梯度,而不用像高数中那样拼命地算偏导数了。有很多学者提出了很多种不同性能的模板,只要按照模板作简单的四则运算就行了,当然这也是能用程序实现的关键。由于作为教学课程,所有的内容都是以简单的灰度图像来说明举例的,当然边缘检测也不例外,所以马上就遇到的一个问题是如何将彩色图像转为灰度图像。 在课程中,转载 2015-02-06 10:07:37 · 450 阅读 · 0 评论 -
图像处理--图像增强
摘自 :http://www.yesky.com/20021224/1645640.shtml前言 对于一个图像处理系统来说,可以将流程分为三个阶段,在获取原始图像后,首先是图像预处理阶段、第二是特征抽取阶段、第三是识别分析阶段。图像预处理阶段尤为重要,如果这阶段处理不好,后面的工作根本无法展开。 在实际应用中,我们的系统获取的原始图像不是完美的,例如对于系统转载 2015-02-06 10:27:41 · 2541 阅读 · 0 评论 -
图像处理——锐化
含笑:这个原理倒是容易理解,不过处理大一点的图像有问题,可能是我的代码有问题,速度慢。 注:所有图像处理所使用到的图片来自陈京东先生拍摄的,a promising remarkble photographer in China. Thank you! 锐化原理:图像的锐化就是要显示图像中有关形体的边缘。所谓形体的边缘就是图像像素点的颜色值发生显著变化的地方,转载 2015-02-06 10:02:21 · 1383 阅读 · 0 评论 -
常见的图像增强方法
1. 对比度拉升采用了线性函数对图像的灰度值进行变换2. Gamma校正采用了非线性函数(指数函数)对图像的灰度值进行变换这两种方式的实质是对感兴趣的图像区域进行展宽,对不感兴趣的背景区域进行压缩,从而达到图像增强的效果3. 直方图均衡化将原始图像的直方图通过积分概率密度函数转化为概率密度为1(理想情况转载 2015-02-06 10:58:48 · 5246 阅读 · 0 评论 -
卷积
信号处理中的一个重要运算是卷积.初学卷积的时候,往往是在连续的情形, 两个函数f(x),g(x)的卷积,是∫f(u)g(x-u)du 当然,证明卷积的一些性质并不困难,比如交换,结合等等,但是对于卷积运算的来处,初学者就不甚了了。 其实,从离散的情形看卷积,或许更加清楚, 对于两个序列f[n],g[n],一般可以将其卷积定义为s[x]= ∑f[k]g[x-k]转载 2015-02-05 23:15:56 · 644 阅读 · 0 评论 -
简单的图像融合
含笑:不上上次的图像融合,一个小程序。界面用了PictureBox1和PictureBox2存载两幅原始图片,用PictureBox3显示融合后的图片。效果:主要算法代码如下,有兴趣的同学自己研究去。首先添加命名空间:using System.Drawing.Imaging; int BPP = 4;转载 2015-02-06 10:06:35 · 1281 阅读 · 0 评论 -
图像处理--局部放大处理
由于时间关系这里先暂且贴上必要算法的代码;//获取一个矩形区域中的子区域void COpencvDlg::GetClipRect(CPoint point, LPRECT lpRect,int d){ CRect rect ; rect=*lpRect ; lpRect->left=point.x-d ; lpRect->top=point.y-d ;转载 2015-02-06 10:19:40 · 1835 阅读 · 0 评论 -
speex 回声消除
在VOIP的音频算法中,回音处理已经成为一个关系通话质量的主要问题。回声的产生在IP网络主要有两种:1.声学回声2.电路回声声学回声主要又分成以下几种:a ) 直接回声:由扬声器产生的声音未经任何反射直接进入麦克风b ) 间接回声: 由扬声器发出的声音经过多次反射后,再进入Mic对于第二种回声,拥有多路径,时变性的特点.是比较难处理的.由于IP网络下的传输的延迟较大转载 2015-02-27 10:55:12 · 2568 阅读 · 0 评论 -
OpenCV训练分类器(转)
OpenCV训练分类器一、简介 目标检测方法最初由Paul Viola [Viola01]提出,并由Rainer Lienhart [Lienhart02]对这一方法进行了改善。该方法的基本步骤为: 首先,利用样本(大约几百幅样本图片)的 harr 特征进行分类器训练,得到一个级联的boosted分类器。 分类器中的"级联"是指最终的分类器是由几个简单分类器级联组成。在转载 2015-02-13 11:22:19 · 679 阅读 · 0 评论 -
OpenCV形态学操作
一、图像腐蚀 膨胀 细化的基本原理1.图像细化的基本原理⑴ 图像形态学处理的概念数字图像处理中的形态学处理是指将数字形态学作为工具从图像中提取对于表达和描绘区域形状有用处的图像分量,比如边界、骨架以及凸壳,还包括用于预处理或后处理的形态学过滤、细化和修剪等。图像形态学处理中我们感兴趣的主要是二值图像。在二值图像中,所有黑色像素的集合是图像完整的形态学描述,二值图像的各个分量是Z2的转载 2015-02-13 11:30:00 · 1057 阅读 · 1 评论 -
OCR开源库(字幕区域定位和字幕识别):github
字幕区域定位和字幕识别 比较好的开源库 SWT识别:yestinsong/Text-Detection( Text Detection System with MSER , SWT and Text Verification(fft and pca) )https://github.com/yestinsong/Text-Detectionaperrau/Detec转载 2017-07-06 18:16:15 · 16579 阅读 · 0 评论