随笔分类 -  计算机图形图像

摘要:本文源自我之前花了2天时间做的一个简单的车牌识别系统。那个项目,时间太紧,样本也有限,达不到对方要求的95%识别率(主要对于车牌来说,D,0,O,I,1等等太相似了。然后,汉字的识别难度也不小),因此未被对方接受。在此放出,同时描述一下思路及算法。全文分两部分,第一部分讲车牌识别及普通验证码这一类识别的普通方法,第二部分讲对类似QQ验证码,Gmail验证码这一类变态验证码的识别方法和思路。一、车牌/验证码识别的普通方法车牌、验证码识别的普通方法为:(1)将图片灰度化与二值化(2)去噪,然后切割成一个一个的字符(3)提取每一个字符的特征,生成特征矢量或特征矩阵(4)分类与学习。将特征矢量或特征矩 阅读全文
posted @ 2013-05-29 00:58 知识天地 阅读(637) 评论(0) 推荐(0)
摘要:本系列文章导航Windows下FFmpeg快速入门ffmpeg参数解释mencoder和ffmpeg参数详解(Java处理视频)Java 生成视频缩略图(ffmpeg)使用ffmpeg进行视频文件转换成FLV整理java 视频处理 mencoderjava 视频处理 ffmped+mencoderWindows下FFmpeg快速入门FFmpeg简介FFmpeg是什么?FFmpeg是用于录制、转换和流化音频和视频的完整解决方案, 包括libavcodec,一套领先的音/视频编解码类库。FFmpeg 在Linux上开发,当可以在大多数操作系统下编译,包括Windows。NoteFFmpeg对GCC 阅读全文
posted @ 2013-05-28 17:31 知识天地 阅读(435) 评论(0) 推荐(0)
摘要:Matlab绘图强大的绘图功能是Matlab的特点之一,Matlab提供了一系列的绘图函数,用户不需要过多的考虑绘图的细节,只需要给出一些基本参数就能得到所需图形,这类函数称为高层绘图函数。此外,Matlab还提供了直接对图形句柄进行操作的低层绘图操作。这类操作将图形的每个图形元素(如坐标轴、曲线、文字等)看做一个独立的对象,系统给每个对象分配一个句柄,可以通过句柄对该图形元素进行操作,而不影响其他部分。本章介绍绘制二维和三维图形的高层绘图函数以及其他图形控制函数的使用方法,在此基础上,再介绍可以操作和控制各种图形对象的低层绘图操作。一.二维绘图二维图形是将平面坐标上的数据点连接起来的平面图形 阅读全文
posted @ 2013-05-28 17:16 知识天地 阅读(554) 评论(0) 推荐(0)
摘要:计算点集的最外面(up-right)矩形边界CvRect cvBoundingRect( CvArr* points, int update=0 );points二维点集,点的序列或向量 (CvMat)update更新标识。下面是轮廓类型和标识的一些可能组合:update=0, contour ~ CvContour*: 不计算矩形边界,但直接由轮廓头的 rect 域得到。update=1, contour ~ CvContour*: 计算矩形边界,而且将结果写入到轮廓头的 rect 域中 header.update=0, contour ~ CvSeq* or CvMat*: 计算并返回边界 阅读全文
posted @ 2013-03-28 07:32 知识天地 阅读(3816) 评论(0) 推荐(0)
摘要:问题:为什么我的电脑支持AVI或者能够播出AVI,但为什么使用cvCreateFileCapture函数总返回NULL呢?答案:尽管是AVI文件,但也可能使用了某种codec,例如:MJPEG Decompressor。 需要把它转换OpenCV支持的AVI文件. OpenCV支持的AVI如下:ContainerFourCCNameDescriptionAVI'DIB 'RGB(A)Uncompressed RGB, 24 or 32 bitAVI'I420'RAW I420Uncompressed YUV, 4:2:0 chroma subsampledAVI 阅读全文
posted @ 2013-03-21 23:36 知识天地 阅读(2698) 评论(0) 推荐(0)
摘要:Ubuntu12.04上编译PlateGatewayQt2013-03-09 00:21:56|分类:Computer Vision|标签:plategatwayqtopencvocrubuntuqt|字号订阅操作系统:Ubuntu12.04 32bit 最近要用到字符识别的项目,于是在网上找到一个不错的demo,链接如下:How-To Install PlateGatewayQt 首先需要PlateGatewayQt需要的相关开发工具包主要有qt,ffmpeg,opencv,tesseract,相关的编译依赖关系如下,以供交叉编译参考:---------------------------- 阅读全文
posted @ 2013-03-14 06:37 知识天地 阅读(978) 评论(0) 推荐(0)
摘要:Ffmpeg包是开发有关视频音频软件的一个非常使用的开发包,但因为其是开源的,因而没有关于其详细的介绍和应用实例,在网上有关此包相关具体的应用介绍也不足以起到指引作用,要搞清楚这个包的使用还得靠大家不断的摸索和总结,这里有一个对其中的Libavformat和libavcodec库的一个简单应用的介绍,希望对大家能有点帮助.如果路过的大牛们有研究这一方面的并有一定成果的(就是有具体应用实例的),能不能赏个脸也指导一下小弟,联系:loneghost@sohu.com谢谢~~---------------------------------------------------------Ffmpeg 阅读全文
posted @ 2013-02-21 16:32 知识天地 阅读(2609) 评论(1) 推荐(1)
摘要:样图1.色阶是什么:色阶就是用直方图描述出的整张图片的明暗信息。如图* I. O( O5 w( r, N7 f- u7 D+ ~从左至右是从暗到亮的像素分布,黑色三角代表最暗地方(纯黑),白色三角代表最亮地方(纯白)。灰色三角代表中间调。大家可以看到,我这张相片暗部像素少,亮部像素也少,那么就是灰蒙蒙的,就是说对比度较低的照片。同理,其他的形式大家可以去推测,这里就不一一赘述了。2.修改色阶是什么:修改色阶其实就是扩大照片的动态范围(动态范围指相机能记录的亮度范围),查看和修正曝光,调色,提高对比度等作用。曝光过度就会亮度溢出,如图:曝光不足则会暗部溢出:这样的照片就是不行的,除非是特殊艺术效 阅读全文
posted @ 2012-05-17 14:43 知识天地 阅读(4855) 评论(0) 推荐(0)
摘要:The functions in this section use the so-called pinhole camera model. That is, a scene view is formed by projecting 3D points into the image plane using a perspective transformation.orWhereare the coordinates of a 3D point in the world coordinate space,are the coordinates of the projection point in 阅读全文
posted @ 2012-03-31 09:07 知识天地 阅读(8025) 评论(0) 推荐(0)
摘要:OPENCV没有提供完整的示例,自己整理了一下,贴出来记录。步骤如下:首先自制一张标定图片,用A4纸打印出来,设定距离,再设定标定棋盘的格子数目,如8×6,以下是我做的图片8×8然后利用cvFindChessboardCorners找到棋盘在摄像头中的2D位置,这里cvFindChessboardCorners不太稳定,有时不能工作,也许需要图像增强处理。计算实际的距离,应该是3D的距离。我设定为21.6毫米,既在A4纸上为两厘米。再用cvCalibrateCamera2计算内参,最后用cvUndistort2纠正图像的变形。结果如下:代码下载代码: <c>#i 阅读全文
posted @ 2012-03-31 08:56 知识天地 阅读(5271) 评论(0) 推荐(0)
摘要:一 作用建立3D到2D的映射关系,一旦标定后,对于一个摄像机内部参数K(光心焦距变形参数等,简化的情况是只有f错切=0,变比=1,光心位置简单假设为图像中心),参数已知,那么根据2D投影,就可以估计出R t;空间3D点所在的线就确定了,根据多视图(多视图可以是运动图像)可以重建3D。如果场景已知,则可以把场景中的虚拟物体投影到2D图像平面(DLT,只要知道M即可)。或者根据世界坐标与摄像机坐标的相对关系,R,T,直接在Wc位置渲染3D图形,这是AR的应用。因为是离线的,所以可以用手工定位点的方法。二 方法1 Direct linear transformation (DLT) method2 阅读全文
posted @ 2012-03-31 08:50 知识天地 阅读(15017) 评论(0) 推荐(0)
摘要:composite命令可以非常方便的合并两张图片因此用来进行图像加水印、批量增加边框等常用的变换最简单的用法为:composite -gravity north src.jpg coverback.jpg des.jpg其中src.jpg为前景图片coverback.jpg为背景图片。des.jpg为叠加后的结果-gravity north 指叠加位置为垂直据顶部、水平居中(正北方向)如果要求在正中间,参数为center如果要求在右下角,参数为southeastcomposite还提供更灵活的定位,可以使用 -geometry 配置具体的composite参数表见下表-affinematrix 阅读全文
posted @ 2012-03-06 11:27 知识天地 阅读(5851) 评论(0) 推荐(0)
摘要:原创文章,转载请注明出处:http://www.cnblogs.com/mfryf/archive/2012/02/27/2369952.htmlOpencv中所有的图像处理都是Iplimage类型的格式,iso的sdk显示一张图像的对象类型是UIImage。因此,我们如果想在ios环境中使用opencv,就必须把UIImage转换成Iplimage,处理之后再把Iplimage转换成UIImage。非常幸运的是,IOS的sdk为我们提供了转换API。从UIImage创建一个Iplimage结构,代码如下:// NOTE you SHOULD cvReleaseImage() for the 阅读全文
posted @ 2012-02-27 15:43 知识天地 阅读(2747) 评论(0) 推荐(0)
摘要:原创文章,转载请注明出处:http://www.cnblogs.com/mfryf/archive/2012/02/27/2369908.html首先利用ios的AVCaptureStillImageOutput,AVCaptureSession,AVCaptureVideoPreviewLayer抓图并显示到UIImageView.然后吧UIIMage转换成opencv中的IplImage利用下面这条语句IplImage *image = [self CreateIplImageFromUIImage:originalImage];剩下的就是opencv中的操作和处理代码如下:+ (UIIm 阅读全文
posted @ 2012-02-27 15:20 知识天地 阅读(3870) 评论(0) 推荐(0)
摘要:HSV颜色空间HSV(hue,saturation,value)颜色空间的模型对应于圆柱坐标系中的一个圆锥形子集,圆锥的顶面对应于V=1. 它包含RGB模型中的R=1,G=1,B=1 三个面,所代表的颜色较亮。色彩H由绕V轴的旋转角给定。红色对应于 角度0° ,绿色对应于角度120°,蓝色对应于角度240°。在HSV颜色模型中,每一种颜色和它的补色相差180° 。 饱和度S取值从0到1,所以圆锥顶面的半径为1。HSV颜色模型所代表的颜色域是CIE色度图的一个子集,这个 模型中饱和度为百分之百的颜色,其纯度一般小于百分之百。在圆锥的顶点(即原点)处,V=0 阅读全文
posted @ 2012-02-21 18:02 知识天地 阅读(10864) 评论(0) 推荐(0)
摘要:何为LUT,就是指显示查找表(Look-Up-Table),LUT(Look-Up Table)实际上就是一张像素灰度值的映射表,它将实际采样到的像素灰度值经过一定的变换如阈值、反转、二值化、对比度调整、线性变换等,变成了另外一个与之对应的灰度值,这样可以起到突出图像的有用信息,增强图像的光对比度的作用。我在以前写的python灰度变换就是和这个是一个意思我们来看看实际运用效果:#include <cv.h>#include <highgui.h>usingnamespace std;int main(int argc, char** argv) { IplImage 阅读全文
posted @ 2012-02-21 15:11 知识天地 阅读(649) 评论(0) 推荐(0)
摘要:OpenCV中国论坛精华区和资料汇总Image Processing & Computer Vision with OpenCVgnuhpc的专栏 - CSDN博客hellogv的专栏 - CSDN博客onezeros的专栏 - CSDN博客opencv一月通(抛砖引玉版)zhujiang73 - ChinaUnix博客 - IT人与你分享快乐生活图像处理 - 无涯 - 博客园图像处理-blog's Blog图像处理-webuserzhy's BlogRadiant Sun 旭的日志 - 网易博客OpenCV学习笔记 收藏 - 芋头的专栏 - CSDN博客OpenCV例 阅读全文
posted @ 2012-02-21 14:48 知识天地 阅读(1607) 评论(0) 推荐(1)
摘要:操作中使用的素材189.pngbackground.pnggradient_back.pngold.pngoverlay.pngshaded.png12、图片乘法操作黑色像素和其它颜色进行乘法,会显示为黑色,白色像素进行乘法,不会改变别的颜色。乘法操作通常可以使图片颜色变暗。指定操作方法(multiply)、顶层图片尺寸及坐标位置(114x114+0+0)。convert gradient_back.png -compose multiply old.png -geometry 114x114+0+0 -composite new.png13、图片反向乘法操作黑色像素和其它颜色进行反向乘法,不 阅读全文
posted @ 2012-02-20 18:36 知识天地 阅读(2889) 评论(0) 推荐(0)
摘要:ImageMagick 函数说明和使用举例,作者:打打 QQ:1069576404首先,加载php_imagick.dll扩展模块,也就是在网上找到php_imagick.dll文件,把它放在php.ini同级的目录中,然后,在php.ini里加上extension=php_imagick.dll,重启服务器就可以了。函数说明:$images = new Imagick("ALIM2382.JPG");//新建 Imagick 类$images->getImageHeight();//获得图片高$images->getImageWidth();//获得图片宽$i 阅读全文
posted @ 2012-02-20 18:20 知识天地 阅读(2096) 评论(0) 推荐(0)
摘要:很久之前看过一篇关于色彩平衡文章,在该文章中介绍了一种非常简单高效的色彩平衡算法。下图是算法的演示效果(左边为处理后的图像,右边为处理前的图像)。从图中可以看出算法有效的改善的图像的色彩,使得色彩更加的真实。下面是实现代码#include "stdafx.h" #include "cv.h" #include "cxcore.h" #include "highgui.h" #pragma comment(lib, "cv.lib") #pragma comment(lib, "cxco 阅读全文
posted @ 2012-02-20 16:22 知识天地 阅读(3566) 评论(1) 推荐(0)