摘要: 时间点:2020-11-18 一、背景 2020年9月nvidia发布了30系列的显卡。比起20系列网上的评价是:性能翻倍,价格减半。 最近正好本人手上有RTX 2080Ti 和 RTX 3090,所以本人专门对其在深度学习上的性能进行了测试。 当前(2020-11-18)网上对3090与2080T 阅读全文
posted @ 2020-11-19 17:51 phata 阅读(3414) 评论(0) 推荐(1) 编辑
摘要: 本人从事计算机视觉&机器学习方向的研究多年。现出售自研算法代码。代码的性能说明如下: 1. 所有代码都是自研,本人拥有100%的版本。 2. 所有代码都使用C++实现;提供的库为纯C库;跨平台,windows与linux平台都通用。 3. 人脸识别算法。 4. 视频质量诊断库:能够检测视频帧(也支持 阅读全文
posted @ 2016-11-16 16:27 phata 阅读(1091) 评论(0) 推荐(0) 编辑
摘要: 一、理论UFLDL教程本教程将阐述无监督特征学习和深度学习的主要观点DeepID人脸识别算法之三代人脸验证算法Joint Bayesian详解及实现(Python版)二、代码Caffe BVLC/caffe · GitHub(C++)MatConvNet http://www.vlfeat.org/... 阅读全文
posted @ 2015-10-28 15:10 phata 阅读(393) 评论(0) 推荐(0) 编辑
摘要: 车牌识别技术(Vehicle License Plate Recognition,VLPR) 是计算机视频图像识别技术在车辆牌照识别中的一种应用。 车牌识别技术要求能够将运动中的汽车牌照从复杂背景中提取并识别出来,通过车牌提取、图像预处理、特征提取、车牌字符识别等技术,识别车辆牌号,目前的技术水平为 阅读全文
posted @ 2015-04-27 17:39 phata 阅读(516) 评论(0) 推荐(0) 编辑
摘要: 智能视频分析目前在国际上有多种叫法,比如VCA(Video Content Analysis)、VA(Video Analysis)、IVA(Intelligent Video Analytics)等。这是计算机图像视觉技术在安防领域应用的一个分支,是一种基于视频分析的智能监控技术。 本智能视频分析 阅读全文
posted @ 2015-04-27 17:37 phata 阅读(2676) 评论(0) 推荐(0) 编辑
摘要: 基于libuv的TCP设计(一) 基于libuv的TCP设计(二) 一、第二版本的libuv_tcp已经基本可以使用。不会出错与崩溃现象,支持几百路客户端同时连接。可是有一缺陷就占用CPU非常高。因为IDLE阶段一直检测有无数据需要发送,所以当服务器空闲时IDLE会空转,占用CPU。如今对此流程进行了改进。 二、改进 1.去掉prepare,check,i... 阅读全文
posted @ 2014-12-20 15:16 phata 阅读(2800) 评论(0) 推荐(0) 编辑
摘要: 一、PTZ云台运动检测是通过配合云台运动的功能检测云台运动是否正常。 二、原理 三、结果演示 视频质量诊断算法库Demo演示下载地址:链接:https://pan.baidu.com/s/1Qrm_peAltkxMjYtNnJq_AA 提取码:hbxx 视频质量诊断系统下载地址:链接:https:/ 阅读全文
posted @ 2014-06-04 23:43 phata 阅读(1888) 评论(0) 推荐(0) 编辑
摘要: 一、画面冻结是由于画面场景没有变化,而仅仅是画面中的时间有变化的情况。此现象需要多帧图像才能检测出来。 二、原理 三、结果演示 视频质量诊断算法库Demo演示下载地址:链接:https://pan.baidu.com/s/1Qrm_peAltkxMjYtNnJq_AA 提取码:hbxx 视频质量诊断 阅读全文
posted @ 2014-06-04 23:43 phata 阅读(3214) 评论(0) 推荐(0) 编辑
摘要: 一、当摄像头立杆不稳或因车辆引起地面振动时,视频画面就会发生抖动。 二、原理 三、结果演示 视频质量诊断算法库Demo演示下载地址:链接:https://pan.baidu.com/s/1Qrm_peAltkxMjYtNnJq_AA 提取码:hbxx 视频质量诊断系统下载地址:链接:https:// 阅读全文
posted @ 2014-06-04 23:43 phata 阅读(4582) 评论(1) 推荐(0) 编辑
摘要: 一、模糊一般是摄像头焦距没调好造成的画面模糊。 二、原理 三、结果演示 模糊率: 0.55 0.63 0.0 模糊率: 0.25 0.14(抗纯色性) 模糊率: 0.62 0.38 算法优点:对于纯色图像不会检测为模糊。算法阈值偏小,0.2以上皆可认为模糊。 视频质量诊断算法库Demo演示下载地址: 阅读全文
posted @ 2014-06-04 23:42 phata 阅读(5142) 评论(1) 推荐(0) 编辑
摘要: 一、信号丢失检测也称无信号检测,一般当DVR/NVR某些通道没接上摄像头时,会显示黑屏无信号。而IPC无信号里无法返回任何图像信息,也就无法通过图像算法检测到。 二、原理 三、结果演示 信号丢失率:0.73 0.96 信号丢失率:0.0 0.0 算法缺点:对于信号丢失返回的不是黑屏界面的设备算法会失 阅读全文
posted @ 2014-06-04 23:41 phata 阅读(3026) 评论(0) 推荐(0) 编辑
摘要: 一、遮挡检测一般是摄像头被异物遮挡,呈现出整个场景或某一部分场景看不到的情况。被遮挡住的部分一般都呈偏黑色。 二、原理 三、结果演示 遮挡率:0.67 0.43 遮挡率:0.52 1.0 本算法缺点:对于黑屏图像,会被检测为遮挡。 视频质量诊断算法库Demo演示下载地址:链接:https://pan 阅读全文
posted @ 2014-06-04 23:35 phata 阅读(6663) 评论(0) 推荐(0) 编辑
摘要: 一、雪花噪声即椒盐噪声,以前黑白电视常见的噪声现象。 二、原理 三、结果演示 雪花噪声率: 0.67 0.63 雪花噪声率: 0.15 1.0 雪花噪声率: 0.65 1.0 视频质量诊断算法库Demo演示下载地址:链接:https://pan.baidu.com/s/1Qrm_peAltkxMjY 阅读全文
posted @ 2014-06-04 23:34 phata 阅读(5676) 评论(8) 推荐(0) 编辑
摘要: 一、条纹噪声是带条状的噪声。 二、原理 三、结果演示 条纹噪声率: 1.0 0.75 条纹噪声率: 0.0 0.0 视频质量诊断算法库Demo演示下载地址:链接:https://pan.baidu.com/s/1Qrm_peAltkxMjYtNnJq_AA 提取码:hbxx 视频质量诊断系统下载地址 阅读全文
posted @ 2014-06-04 23:34 phata 阅读(4885) 评论(6) 推荐(1) 编辑
摘要: 一、亮度异常检测一般包括偏暗检测和偏亮检测,也有称过暗过亮检测。这算法简单,只需要一帧图像的亮度值作为判断就行。 二、原理 三、结果演示 偏暗率: 1.0 0.95 偏亮率:1.0 本算法缺点:对于黑屏或无信号图像,会被检测为偏暗(不过也正常,那些现象整张图像都是暗的)。 视频质量诊断算法库Demo 阅读全文
posted @ 2014-06-04 23:28 phata 阅读(4965) 评论(0) 推荐(0) 编辑
摘要: 一、色度异常检测一般称为偏色检测。 即图像为某一范围颜色值分布过多而导致图像整体偏色的情况。 二、原理 求最方图最大bin占整个直方图的比例,该比例值就为偏色值 三、结果演示 偏色率: 1.0 0 0.21 0.43 1.0 偏色率: 1.0 0.71 0.17 偏色率: 0.77 1.0 偏色率: 阅读全文
posted @ 2014-06-04 23:28 phata 阅读(2492) 评论(2) 推荐(0) 编辑
摘要: 一、随着平安城市、大安防的发展,监控摄像机数量的不断增加,给监控系统的维护工作带来了新的挑战。如何及时了解前端视频设备的运行情况,发现故障并检测恶意遮挡与破坏的不法行为已成为视频监控系统运行的首要迫切问题。对于成千上万个监控摄像机,依靠人工去检测监控画面是否有故障是不现实的,因此视频质量诊断系统应运 阅读全文
posted @ 2014-06-04 23:27 phata 阅读(3153) 评论(0) 推荐(0) 编辑
摘要: 一、本人设想的TCP服务器有如下特性:1.启动服务,一直监听端口。2.有新连接(客户端)就通知用户。并把连接接收到的数据回调给用户。3.客户端连接上后用户可在任意时间发送数据给它。4.客户端断开时关闭或用户可手动关掉。以上操作都可以不同线程在完成。二、使用libuv遇到的问题由于对libuv不熟悉+... 阅读全文
posted @ 2014-05-28 23:47 phata 阅读(11521) 评论(0) 推荐(0) 编辑
摘要: 本人一直在寻找一个跨平台的网络库,boost与ACE比较庞大,不考虑。对比了libevent,libev,libuv后,最终选择了libuv.可libuv文档少,例子也简单,对于tcp只有个echo-server的例子。网上也找过对其封装的例子,如下libsourcey库,封装了许多库。对libuv... 阅读全文
posted @ 2014-05-28 17:38 phata 阅读(6381) 评论(0) 推荐(0) 编辑
摘要: 背景:本人最近有一项目要连接IP摄像头,市场上两大主流厂商为海康与大华,SDK成熟,很容易就能连接并取流。连接好海康与大华后,因为公司也有自己的IPC,也需要把公司的IPC连接上。经历:拿到公司IPC SDK与demo后,就开始按海康大华的连接思路工作了。连接类写好后,经测试,问题就来了:连接一直有问题,不是解码库抛异常,就是登录得了但回调不了视频流。很困惑....与库开发人员联系,他们坚信库没问题,而我测试又一直有问题。最后没办法,写了个demo证明问题的存在发给库开发人员测试。 一天过去了,经过几次交流,问题找到了,库完全没问题,是我的调用方法错了。Demo的调用方法是正确的,只是我... 阅读全文
posted @ 2013-10-11 14:06 phata 阅读(1966) 评论(0) 推荐(0) 编辑
摘要: 在参考https://code.google.com/p/imgwarp-opencv/的基础上,把mls图像变形算法进行了实现,但感觉效果不是很好。在此贴出源代码,希望有人其同探讨与对其改进。 原图像变形后图像 关于像素值的复原:mls只讲变形后新坐标的位置,未谈到像素值如何还原(因为一般为整数坐标到实数的坐标)。前向映射与逆向映射2种方法我都试过,效果一般,网格明显。有没有更好的像素值复原办法呢?关于本代码:对于控制点8个以上变形就会出错(有一点在轮廓内),如此图。不知是什么原因。 附代码(依赖于opencv)/************************************... 阅读全文
posted @ 2013-03-26 12:20 phata 阅读(1715) 评论(0) 推荐(0) 编辑
摘要: 本人以前发布过《跨平台项目组织》一文,通过在项目中的实践,有了些修改,这是V0.2版。 一、概述 最终研究跨平台开发项目。 平台:主要有Windows和Linux两种平台(Mac平台没机会接触,暂不考虑)。 原则:使用跨平台开发工具与开发库。主要开发环境为Windows下的VC,完成后再到其他平台去调试。 工具:本人常用跨平台开发工具为Codeblocks,常用跨平台库为wx... 阅读全文
posted @ 2012-11-29 15:03 phata 阅读(1607) 评论(6) 推荐(1) 编辑
摘要: 需求:在外打工租房,与朋友合租。吃住费用管理麻烦。故利用业余时间开发此小软件。工具:gcc,codeblocks,wxwidgets,opencv,sqlite(本人常用到开发工具)特点:跨平台(win+linux)使用说明:无。完全根据本人思路设计而成。暂时没有文档。SVN源代码:http://householdmanagement.googlecode.com/svn/trunk/。checkout该网址就行(没使用过SVN的最后先百度,google)项目组织说明:本人跨平台项目组织经验win平台使用老邓绿色版本的codeblocks,其中对codeblocks进行了升级(night bu 阅读全文
posted @ 2012-10-30 14:22 phata 阅读(779) 评论(3) 推荐(0) 编辑
摘要: 跨平台项目组织一、概述最终研究跨平台开发项目。平台:主要有Windows和Linux两种平台(Mac平台没机会接触,暂不考虑)。原则:使用跨平台开发工具与开发库。主要开发环境为Windows下的VC,完成后再到其他平台去调试。工具:本人常用跨平台开发工具为Codeblocks,常用跨平台库为wxWidgets, Opencv, rapidXml, tcmalloc,OTL, Sqlite.最友好的开发环境莫过于Windows下的Visual Studio.所以跨平台项目IDE有两种,VS与Codeblocks。库也有两种VC与gcc.二、项目文件组织项目文件组织如下:目录作用3rdparty1 阅读全文
posted @ 2012-09-24 16:10 phata 阅读(570) 评论(0) 推荐(0) 编辑
摘要: ubuntu12.04中opencv静态编译1.12.04中没有了新立德,忍受不了软件中心的慢,所以安装了新立德apt-get install synaptic2.安装gcc等C/C++编程相关工具sudo apt-get install build-essential3.安装gtk+(opencv的界面显示就靠它了)安装GTK环境只要安装一个libgtk2.0-dev就可以了,而安装gnome开发环境的话,需要装gnome-core-devel,它包含GTK开发包。sudo apt-get install gnome-core-devel(有点慢,需要下载,看网速)pkg-config -- 阅读全文
posted @ 2012-09-24 16:08 phata 阅读(2188) 评论(0) 推荐(0) 编辑
摘要: 问题:opencv与qwxwidgets都静态链接到tiff,jpeg,png,zlib四个库,当opencv使用静态编译时,在wxwidgets的event事件中处理使用opencv读写jpg,tiff,png图片有时候会出错。原因是opencv读取图片的代码可能与wxwidgets冲突了(具体原因未深入研究)。我遇到的情况是读写jpg文件来出错,读写png,tiff文件正常。对比opencv与wxwidgets使用第三方图像库的版本如下(版本没有大改动,按理说应该不会有问题,除非有一方的代码实现对其进行了某些改动)第三方库 opencv242 wxWidgets294jpeg 6b (.. 阅读全文
posted @ 2012-09-19 17:25 phata 阅读(1138) 评论(0) 推荐(0) 编辑
摘要: 项目中需要到判断点与线段的关系,发现使用向量外积来判断容易些,恶补了一下向量的知识。向量外积,又称叉积,是向量代数(解析几何)中的一个概念。两个向量v1(x1, y1)和v2(x2, y2)的外积v1×v2=x1y2-y1x2。如果由v1到v2是顺时针转动,外积为负,反之为正,为0表示二者方向... 阅读全文
posted @ 2012-06-06 09:57 phata 阅读(1602) 评论(0) 推荐(0) 编辑
摘要: 出处:http://blog.csdn.net/abcjennifer/article/details/6662706真正了解了什么叫最简单的就是最美好的真正的好文章不需要大堆公式堆积显得充实,而是最最平实的思想!这篇文章的:原文PDF、数据集、幻灯片、视频。感兴趣的可以了解一下。这篇文章的目的就是以最简单的思路将图像达到去雾效果。用Matlab编了一下,效果图特别好啊哈:下面是摘录的:CVPR的中文名是计算机视觉与模式识别会议,是计算机视觉领域最顶尖的国际 会议之一。09年的CVPR共收到约1450篇投稿,其中393篇文章被接收,接收率为26%。只有一篇文章被选为今年的最佳论文。这是CVPR 阅读全文
posted @ 2012-04-07 20:07 phata 阅读(741) 评论(0) 推荐(1) 编辑
摘要: 今天找一个资料,在网上下载到了。是一个7Z的压缩包,70多M。我用WinRar解压后发现竟然有600多M,太惊讶了,压缩率竟然这么高。不行,我得了解一下7Z格式为什么压缩率那么高先。首先,我用WinRar压缩一下,110多M,看来7Z厉害,本人孤陋寡闻,只知WinRar,如今见识到7Z,开眼界了。网上搜索7Z相关资料,它还是个开源软件,这让我想起WinRar需要破解的麻烦。而且有人对这两种软件做过比较(7Z比WinRar拥有更高的压缩比与压缩用时),引用如下。出处:http://www.pconline.com.cn/pcedu/pingce/0603/771310.html ... 阅读全文
posted @ 2012-03-18 16:55 phata 阅读(2013) 评论(0) 推荐(0) 编辑
摘要: 在共同探讨C++代码编写风格的帖子里,看到有个提到使用AStyle工具可以自动格式化代码风格,想过我用ctrl+K,ctrl+F的痛苦日子,我决定尝试一个这个软件。 软件下载到了,但如何使用与配置,还得有人教。上网找了一下,找到http://blog.csdn.net/akof1314/... 阅读全文
posted @ 2012-03-16 23:57 phata 阅读(1435) 评论(0) 推荐(1) 编辑
摘要: http://www.51testing.com/?uid-86711-action-viewspace-itemid-1002871、返回的是连接的数据库名and db_name()>02、作用是获取连接用户名and user>03、将数据库备份到Web目录下面;backup database 数据库名 to disk='c:\inetpub\wwwroot\1.db';--4、显示SQL系统版本and 1=(select @@VERSION) 或and 1=convert(int,@@version)--5、判断xp_cmdshell扩展存储过程是否存在and 阅读全文
posted @ 2012-02-05 16:18 phata 阅读(433) 评论(0) 推荐(0) 编辑
摘要: 出处:http://www.cnblogs.com/jacklondon/archive/2012/01/13/2321686.html近日偶尔看到一个很巧妙的 SQL 技巧,一个简单的 SQL 同时验证帐号是否存在、密码是否正确。之前从未曾想过这么做,也未曾见过别人这么做。虽是奇技淫巧,却真正所谓构思巧妙。如果用来面试考考别人,真的能够难倒一大片兄弟。好东西不敢独享,特公开与大家同乐。SELECT CASE WHEN p.encrypted_password =? THEN 1 ELSE 0 END FROM tm_app_user u, tm_app_user_credential p W 阅读全文
posted @ 2012-01-14 10:31 phata 阅读(314) 评论(0) 推荐(0) 编辑
摘要: 出处:http://www.cppblog.com/tx7do/archive/2011/05/07/145865.html最简单的TCP网络封包解包(补充)-序列化如若描述或者代码当中有谬误之处,还望指正。将数据能够在TCP中进行传输的两种方法1.直接拷贝struct就可以了;2.序列化。拷贝Struct存在的问题1.不能应付可变长类型的数据,比如STL中的那些容器,当然,STL的容器归根到底就是一个class,他们的长度都是不确定的;2.内存对齐的问题,Windows默认的对齐是4字节,如果不去刻意关闭掉对齐的话,那么可能会多出不少没必要的字节数,但是如果关闭了,内存拷贝又会慢一些。序列化 阅读全文
posted @ 2011-12-31 17:27 phata 阅读(1368) 评论(0) 推荐(0) 编辑
摘要: 出处:http://www.cnblogs.com/project/archive/2010/12/02/1894494.html在我们平时的编程时,经常需要判断文件或者目录是否存在,相对来说判断文件的存在性比较简单,目录则比较复杂。下面就详细的介绍几种方法。首先关于判断文件的存在性:一、ifstream在C++中,可以利用ifstream文件输入流,当我们直接使用ifstream来创建文件输入流的时候,如果文件不存在则流创建失败。ifstreamfin("hello.txt");if(!fin){std::cout<<"cannotopenthisf 阅读全文
posted @ 2011-12-31 10:11 phata 阅读(812) 评论(0) 推荐(0) 编辑
摘要: 出处:http://hi.baidu.com/kofeffect/blog/item/cd040c2b2979d8fee6cd40c4.html1.MFC中的方法:(C++)CFileStatus status;CFile::GetStatus("D:\\test.txt",status);long lSizeOfFile;lSizeOfFile = status.m_size;lSizeOfFile的值就是D:\\test.txt文件的大小2.标准C获得文件大小的5种方法(注意:"__FILE__"指的是当前文件,你可以改为有效路径的目标文件,比如&q 阅读全文
posted @ 2011-12-28 12:43 phata 阅读(1898) 评论(0) 推荐(0) 编辑
摘要: 转自http://witmax.cn/c-md5-code.html,作者也是网上转载的,但没标明出处。网上找到的md5函数的代码,试了一下,可以用,记录一下。包括三个文件,依次如下:头文件md5.h#ifndef MD5_H #define MD5_H typedef struct { unsigned int count[2]; unsigned int state[4]; unsigned char buffer[64]; }MD5_CTX; #define F(x,y,z) ((x & y) | (~x & z)) #define G(x,y,z) ((x & 阅读全文
posted @ 2011-12-26 11:39 phata 阅读(2995) 评论(0) 推荐(0) 编辑
摘要: 今天使用VS2008,想要release编译时出现“mt.exe停止工作”,网上最多在解决方法是:alt+f7 打开项目的属性窗口清单工具--》输入和输出--》嵌入清单 默认“是” 将其值改成“否”但这样的话生成的exe文件需要带着相关的..manifest文件才能运行。因为它没把清单嵌入进去,可见这种方法是不行的。最终我找到了另一个解决方法(http://hi.baidu.com/herohbc/blog/item/726b02025f3cc5f709fa93e8.html):如下昨天晚上用VS2008编译Qt的程序时,突然弹出下面的对话框,提示mt.exe已停止工作。单击取消或者关闭程序后 阅读全文
posted @ 2011-12-22 16:34 phata 阅读(1072) 评论(0) 推荐(0) 编辑
摘要: 出处:http://www.vckbase.com/document/viewdoc/?id=1474用 C 语言编写 Windows 服务程序的五个步骤原文:Yevgeny Menaker翻译:Northtibet下载源代码原文出处:Five Steps to Writing Windows Services in C摘要 Windows 服务被设计用于需要在后台运行的应用程序以及实现没有用户交互的任务。为了学习这种控制台应用程序的基础知识,C(不是C++)是最佳选择。本文将建立并实现一个简单的服务程序,其功能是查询系统中可用物理内存数量,然后将结果写入一个文本文件。最后,你可以用所学知识. 阅读全文
posted @ 2011-11-25 14:15 phata 阅读(318) 评论(0) 推荐(0) 编辑
摘要: 简单用法:1.定义成员: CSerialPortm_SerialPort; 2.初始化:m_SerialPort.SetBufferSize(1024,1024);m_SerialPort.SetWnd(m_hWnd);m_SerialPort.SetNotifyNum(DEF_IN_BYTE_SIZE);if (m_SerialPort.IsOpen()){m_SerialPort.Close();}m_SerialPort.Open(1,"9600,O,8,1");m_SerialPort.ClearInputBuffer();m_SerialPort.ClearOut 阅读全文
posted @ 2011-11-20 16:49 phata 阅读(1185) 评论(0) 推荐(0) 编辑
摘要: 出处:http://blog.csdn.net/friedvan/article/details/6195777(opencv2.3.1仍然有这问题)以前在opencv2.0里面用到cvSetCaptureProperty函数的时候总是发生定位不准确的问题,明明是让其跳到100帧,结果却总不是100帧,定位一段连续的视频,总是出现跳跃的现象。同样的代码在opencv1.0里面完全没错。可是这是为什么?这个问题一直困扰了我半年,终于在今天知道原因了。经过差不多一晚上的探究,得出粗略的结论。原因在于opencv2.0以后,采用ffmpeg采集视频,而在opencv1.0采用vfw采集视频(具体的概 阅读全文
posted @ 2011-10-09 17:31 phata 阅读(508) 评论(0) 推荐(0) 编辑