自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(45)
  • 收藏
  • 关注

原创 Emgucv不完整图像分割试验(十九)——Emgucv实现ACE算法

图像相关的ACE算法有自适应色彩和自适应对比度增强两种缩写的意思,本文是针对对比度自适应增强的。网上代码很多的,但都是基于Opencv实现的,相关介绍可以直接看:https://blog.csdn.net/thecentry/article/details/105716770以上肯定不是原作者,我记得很久前看到一位很厉害的大神用c++写的,最后封装成32位C#能用的DLL的,他应该才是原作者,有谁找到了私信我,我替换成原作者的。opencv转emgucv大家肯定没问题,就是有些小细节没注意到会造

2021-08-07 23:00:22 647

原创 Emgucv不完整图像分割试验(十八)——Emgucv或opencv连接海康/萤石网络4G摄像头

项目需要远程连摄像头,之前也一直觉得这事挺简单的,opencv有教程也平时很多地方见过这样的操作,没想到实践起来蛮多坑的。1.首先确定摄像头支不支持4G或WIFI,尽量选海康萤石这种大厂,资料较多。2.rtsp链接的话每个厂商格式有所不同,一定要确认。萤石是 admin/设备的验证码/ip地址,我就是这一步卡了几个小时,网上都写用户名/密码/IP,害我一直以为是萤石的账号。3.只想看能不能连rtsp的,强烈建议装个VLC media play,方便。4.设备都要激活在用,激活的时候一般都是插

2021-03-18 11:22:24 721

原创 Emgucv不完整图像分割试验(十七)——最大内接圆的两种获取方法

opencv没有最大内接圆的函数?需要自己用轮廓的点去算?其实不用,有个隐藏的函数一样能做。别问为什么有了最大外接圆后还要去求最大内接圆,你做深了做久了这个问题一定会经常遇到,很多地方会有用。先给个传统方法:方法就是遍历轮廓内所有点,计算轮廓内部到所有点到最近轮廓点的距离。public static void FindInnerCircleInContour(VectorOfPoint contour, out PointF center, out double radius)..

2021-02-21 19:57:52 662

原创 Tensorflow 2.0 目标识别(五)——TF2.0+Object Detector(用户自定义训练)

到目前为止,您应该已经执行以下操作:已安装的TensorFlow 已安装的TensorFlow对象检测API既然我们已经完成了上述所有工作,我们就可以开始做一些很酷的事情。在这里,我们将看到如何训练自己的对象检测器,由于它听起来并不简单,因此我们来看看:如何组织工作区/培训文件 如何准备/注释图像数据集 如何从此类数据集生成tf记录 如何配置简单的培训管道 如何训练模型并监控其进度 如何导出结果模型并将其用于检测对象。1.2.1 准备工作区如果您已按照本教程进行操作,那么..

2020-09-21 00:25:06 951 1

原创 Tensorflow 2.0 目标识别(四)——TF2.0+Object Detector

本章介绍TensorFlow2.*版本下Object Detector的高级Api的使用,Object Detector在TensorFlow2.*版本下是一个非常好用的高级接口,但随着TensorFlow升级到2.*后一度由于没有更新后处于滞后的状态,千呼万唤在2020年7月左右官方发生更新,正值本书编写的过程中,所以特地补充一章。完成本章可以获得以下知识点:TensorFlow2.*下Object Detector的安装 TensorFlow2.*下Object Detecto的环境配置 T

2020-09-21 00:16:12 1528

原创 Tensorflow 2.0 目标识别(三)——TF2.0

安装TF命令,gpu版本:pip install tensorflow_gpu==2.1.0 -i https://pypi.tuna.tsinghua.edu.cn/simple安装好后可能会报错的几个地方:找不到dll,可能的地方CUDA的环境变量没弄对,cudnn版本和CUDA不匹配。cudart64_*.dll,类似100改101之类的,能自然匹配最好,不行就搜素后改下名字...

2020-04-13 23:45:06 1118

原创 Tensorflow 2.0 目标识别(零)——报错合集

报错提示:failed to create cublas handle: CUBLAS_STATUS_ALLOC_FAILED分析:显存不足解决方法:关闭 jupyter

2020-04-11 18:32:20 462

原创 Tensorflow 2.0 目标识别(二)——CUDA&CUDNN安装

上文要求各位检查自己显卡,和操作系统。CUDA到下文地址,默认是最新的10.2,注意自己显卡驱动版本选择合适的版本。https://developer.nvidia.com/cuda-toolkit-archive下载后默认安装,记住路径,后面会用CUDNN到下文下载,需要注册账号。agree后显示如下图片,选合适自己CUDA版本的VUDNN。https://develo...

2020-04-11 17:41:01 473

原创 Tensorflow 2.0 目标识别(一)——环境确认

Tensorflow 1.*的坑没完全入,TF 2.*就开始了。市面上教程1.*和2.*的混杂,python 3.6与3.7,TF2.0A版本与TF2.1版本,CUDA9.0与CUDA10.0等等均会出现问题,TF果然和笔者之前学习的Emgucv一样,想升级就升级,全然不顾开发者的死活。无奈最近项目开始需要很多目标识别的需求,只能忍着一步步重新搭建环境。全部过程会遇到很多很多和路径以及版本...

2020-04-10 16:09:48 2180

原创 佳能Canon相机SDK-C#版本64位

如题,我常用语言是C#,图像处理库Emgucv,最近处理一些任务的时候,发现佳能相机的SDK官网只有c++等其他语言,好不容易搜搜也只有32位的版本。网搜一坨,到了64位C#语言下,只有一句话:不支持64位,仅提供连接和预览,拍照功能会报错。32位有个巨大的问题就是,内存管理最大到2G,Emgucv的图像处理库说么说C#下内存会自动释放,但即便每次申请新图片用完马上释放也还是眼睁睁看着内存爆到...

2020-03-31 22:09:24 3073 4

原创 Emgucv不完整图像分割试验(十八)——非标GLCM(C#版本)

图像切割无外乎用颜色(rgb,hsv等)形状(凹点,凸包,各种矩)区分,纹理也很多,常用GLCM灰度共生矩阵,欺负人,又是opencv版本有,适合C#版本的没有,即便有,也大多是基于标准矩形的,但实际应用的时候,我们往往要分析不规则图形。本来想做个mask图像后,把灰度0-0(意思是某像素为0,该左侧的像素也为零,具体参考GLCM)剔除就行了,后来想想不对,万一图像内部也有0-0的像素...

2020-02-11 23:46:25 624

原创 Emgucv不完整图像分割试验(十七)——字符切割&内轮廓判定

本篇比较水,但估计挺多人需要的。。。前提:老版本Emgucv用的contour保存轮廓,所以内外轮廓直接就能用Nnest和Pnext或者层数区分开,但新的VVP始终找不到办法,项目又着急需要,就硬着头皮强推了一波。项目需要字符切割,但不是简单的图,给出的图片都是拍摄质量不高的(质量好的也不会找到我,命苦)所以噪点很多。常规字符切割步骤:滤波(高斯或双边),二值然后根据轮廓的形状或位置切...

2020-02-10 22:53:02 921

原创 Emgucv不完整图像分割试验(十六)——dataGridView1数据追加到excel

教程不完整,不如不写。网搜了一大片东拼西凑才搞完,无奈嘞。插入excel文件,网上两大流派:using Microsoft.Office.Interop.Excel;using NPOI;本教程使用的是上者,喜欢后者的不用看下去了。再者,插入excel又分为两种情况,已有excel文件以及需要新建excel文件。单独写了个类,小功能所以没怎么调整,只是微调,杂乱的注释和不明所以...

2020-01-06 23:56:00 166

原创 Emgucv不完整图像分割试验(十五)—— 匹配特征点的提取以及半透明显示连接线

有人求助说要将Emgucv模板匹配中的连接线半透明显示出来,没想多示例代码的集成度太高, Mat mask; FindMatch(modelImage, observedImage, out matchTime, out modelKeyPoints, out observedKeyPoints, matches, out...

2019-12-23 20:44:33 1074 2

原创 Tensorflowsharp从入门到放弃(三)——2.0来啦,彻底放弃了,弄了个TF2.0的。

识别的需求越来越多,等不了,硬上TF2.0,先上效果,代码慢慢上:原由是很久以前看到CSDN上有人用TF1.*版本的 object detection接口训练了麻将识别(原帖我找不到了,麻烦知道的留个言,致敬原作者),于是就又心思活了。但毕竟2.0出来了。素材是自己准备的,代码是找写手帮忙写的据反映, object detection接口没办法用在TF2.0下,所以用了YOLO v...

2019-12-19 14:35:38 1056 1

原创 Emgucv不完整图像分割试验(十四)—— 证件照自动背景替换

不公开代码,不公开代码,不公开代码!仅是把自己踩过的坑公布一下,几条走不通的路公布一下。一提到证件照背景替换,第一直觉反应就是类似PS的魔术棒圈住背景然后换掉。会出现锯齿(马赛克),然后市面上常见的方法就是调整锯齿区域,从此走上不归路。常见做法是继续在上一不基础上加入人工涂抹或者直接羽化边缘,但效果十分不好,如下图所示(appstore上随便下的几个应用)以下是我处...

2019-09-13 10:20:55 771

原创 Emgucv不完整图像分割试验(十三)——颗粒计数

当初入手图像处理是想做个数粒宝,花了两年多时间都没做的太好,失败原因总结如下:1.当年成像设备选的太差,分辨率太低导致粘连的缝隙太模糊2.Emgucv也好,图像处理也好,太多的知识点有盲区好在这次做了一个数子弹的,把之前坑终于补上了。图像处理尤其图像切割这块已经打通,在此将多年心得总结。N多基本的Emgucv的说明,我这出了本书,没上架,需要的直接QQ联系(273651820),纸...

2019-09-12 15:15:26 773

原创 Emgucv不完整图像分割试验(十二)——直线拟合

项目需要,求一个书缝的位置,如何找书缝不便公开,将其中直线拟合的部分分享一下。CvInvoke.FitLine()在emgucv官网上有两种输出方式。一种是直接输出线段,IOutputArray line,但是IOutputArray实在找不到对应的类型,翻墙找的也只有估计是2.*版本的,输出类型是OutputArray line的代码,希望有知道这种输出的留言给我说一下。第二种是输...

2019-09-09 00:40:07 2027 1

原创 Emgucv不完整图像分割试验(十一)——灰度共生矩阵,纹理特征

Emgucv不完整图像分割试验(三)——纹理+色彩分割 ,https://blog.csdn.net/qq_26996385/article/details/80925802前文中使用的afrog库升级导致部分功能无法使用。尤其是计算灰度共生矩阵方面。网搜Accord可搜素C#语言下完整的人工智能类库,afrog已经被吸收进去,参见accord.image使用时最好从Nuget安装。获...

2019-08-23 23:21:04 713 1

原创 Matlab调用excel数据绘制折线图

如题,matlab之前没接触过,但是电脑上一直有安装,有些老师需要做几张图放论文里,所以尝试了一下(excel其实效果也行,但matlab感觉更专业)x=2:2:778;%x轴上的数据,第一个值代表数据开始,第二个值代表间隔,第三个值代表终止a= xlsread('d:/RVA-zlx.xls',1,'D2:D390'); %a数据y值b= xlsread('d:/RVA-zlx.xls...

2019-07-22 16:49:46 20661 2

原创 Emgucv实现高拍仪功能(三)——投影切割

零碎的切割,适合标准的数字图像。帮人写的所以没太强化(分割的时候没设置正常行间距的阈值,后期也懒的判断矩形是否能合并),知识点也就是C#下的BitmapData的运用。思路:先做水平投影,通过像素的变换,找到上下两条线,同样方法做垂直投影,找到左右两条线,然后圈出矩形。 private void btnCutAuto_Click(object sender, Ev...

2019-05-28 21:44:21 1104

原创 Emgucv实现高拍仪功能(二)——扫描件去底色

参考原文和实现效果见下帖:https://blog.csdn.net/jkjj2015/article/details/87160291效果如下:该博主用的是Java,我这仿写了C#的,代码如下: private void ReduceBackGround(Image<Bgr,byte> tempImage) { ...

2019-04-09 20:57:58 2157 5

原创 Emgucv实现高拍仪功能(一)——仿射变换与透射变换

忙了N久长时间没有更新博客了,追问的人很多,你们赢了,上来分享下最近做的图像相关。目标是要求我做一个全能扫描王一样的应用,前前后后需求改了好几版,分开来每种方案都能实现,合并起来想全能谈何容易。其实最终目标就是找到图片中的纸张并还原成标准矩形么,前前后后做了三个版本,把经历的坑分享一下,具体代码就保密了,毕竟做的是产品,要为对方老板负责。方案一: 自适应二值,查找最大轮廓,霍夫直线检测...

2019-03-23 18:29:50 992

原创 Emgucv不完整图像分割试验(十)——blob(临时)

纯先放一放,感觉这blob以后会有用的!原作者链接如下:https://blog.csdn.net/jaych/article/details/62947714?locationNum=1 

2019-01-13 22:17:10 623

原创 Emgucv不完整图像分割试验(九)——运动追踪

越来越懒了,反正就是几个模型的using的库微微的有一点不一样,自己官网搜搜。 BackgroundSubtractorMOG2 bg_mog = null;//随便什么模型,大概有4个老的2个新的,都一样的写法。 Mat scr = new Mat();//更新输入图像。 Mat mask = new Mat();//运动检测输出图像。 ...

2019-01-13 01:01:11 734

原创 Emgucv不完整图像分割试验(八)——OCR(中文字符)

 爬虫爬取某网站图片后,识别图片中的字符。核心没什么太难的内容,卡在Emgucv的draw字符身上了。当然后来发现opencv下看别人用pil搞定了,python下也有自己的中文字库很容易就替换了。但Emgucv的资料太少了,最后想了一个很扯淡的招,自己画两张新图,一张有颜色的作为目标(就当是水印),一张黑白的作为掩码。最终效果如下图所示。核心代码如下: ...

2019-01-09 12:42:25 1112

原创 Emgucv不完整图像分割试验(七)——玉米考种(分水岭分割)

Emgucv3.*下的分水岭分割,网上资料比较少,硬吭了半天,终于踩坑过了。放下原图后最终处理结果。我为了视觉效果更明显,把分割线膨胀了1。二值化细节不便透露,此处贴出分水岭分割部分。注意convertedOriginal 最好不要用Image&lt;Bgr,Byte&gt;,能用Mat就用Mat注意markerImage 做好不要用Image&lt;Gray,Int3...

2018-12-27 00:31:13 1397

原创 Emgucv不完整图像分割试验(六)——麦穗计数(通道)

说好的不做图像处理了,没想到麦穗的图像识别那么难,最后还是降到了图像处理的阶段。最终结果如下:细节不便透露,主要用到的通道的过滤。 VectorOfMat channels = new VectorOfMat(); //创建vectorOfmat类型存储分离后的图像            CvInvoke.Split(tempImage, channels);...

2018-12-22 16:55:29 949 2

原创 Win10系统VS2017平台-Tensorflow开发环境搭建自己的物体识别!(二)

python和tensorflow是超级小白,VS的IDE外面也是很少教程,一步步爬坑不易。接着上文。假定python已经安装了,TF也用pip install python已经安装好了,但是TF是不能直接用了,随便网上找一段代码都会是发现有很多import *** 的 ***无法找到的报错,和装TF一样,一般 pip install *** 都能自动安装。其中几个卡的比较久的安装问题如下...

2018-12-13 00:25:36 1254

原创 Win10系统VS2017平台-Tensorflow开发环境搭建自己的物体识别!(一)

Tensorflowsharp出来后念念不忘,之前鼓起勇气想试试,果然资料有限加能力有限,终是放弃了。思前想后,退而求其次,改用python跑模型,以后用tensorflowsharp+emgucv做识别和分类。tensorflow(包括里面的几个小包)的配置外面漫天飞舞,python也是“公交车”语言,哪哪都有他们两的组合,所以可苦了我等基础薄弱的学渣。笔者环境初始:系统Win10 ...

2018-12-09 10:56:10 957

原创 Tensorflowsharp从入门到放弃(二)——这次有个手写数字识别

接上文,源代码是控制台的:所有输出Console.WriteLine(*);这样的代码一致改为this.textBox1.Text +="\r\n"+ string.Format(*);这次又更新了四课内容,其中手写数字识别卡住了一会,主要原因是网上 TF#的MNIST手写数字识别代码太多太乱,此处补上最新版的(也是原作者的代码)供后人学习。 /// &lt;summar...

2018-11-01 12:31:54 4053 1

原创 Tensorflowsharp从入门到放弃(一)——安装和教程复刻

图像做到瓶颈了,换深度学习了。如同opencv基于c++的我不会最后用了Emgucv一样,Tensorflow我也是不会python和c++,最后决定用Tensorflowsharp(以后用TF#缩写了)。和Opencv与Emgucv一样的问题,TF教程漫天飞了,但TF#外面只有简单的介绍和已经训练好的识别,路漫漫我又来踏这第一步了,不知道能坚持多久。安装就一句话:新建项目(我还是只习惯w...

2018-10-30 22:45:53 3121

原创 Emgcv配置问汇总(CvInvoke错误)

用Emgucv总是cha超级麻烦,很多人都卡在配置上,从2.4.*开始到3.4.*,数不清多少次配置问题了,稍微汇总一下:不要一出现接口配置问题就暴躁,按顺序检查:1. 当前环境搞清楚,操纵系统是什么,xp以下的请确认补丁打全了,sp1,sp2,sp32. 开发环境搞清楚,VS什么版本,2008一下确认sp1补丁已经打了3. 编译环境搞清楚,32位还是64位,修改any cpu都试...

2018-07-22 00:46:05 652

原创 Emgucv不完整图像分割试验(五)——透视变换&amp;&amp;OCR(自带的Tesseract)

再次吐槽Emgucv的版本升级后代码不能用,修正代码如下:  PointF[] srcquad = new PointF[4]; PointF[] dstquad = new PointF[4]; srcquad[0] = pa; ...

2018-07-16 15:45:01 2663

原创 Emgucv不完整图像分割试验(四)——Imagebox控件坐标转图片坐标

书接上文Emgucv不完整图像分割试验(三),将图切割N个小块后如何在Imagebox内选中所需要的小块的问题就浮上来了,本来是一个很简单的问题,但如果加上滑动条和缩放后,整个事情就变得变态起来了。。。涉及的数值太多,画了上面个图辅助说明。A:现在图的尺寸(假定有放大缩小)B:ImageBox的尺寸(假定随窗口一起变化)C:鼠标相对ImageBox的坐标(这个也就是我们直接获取的数据,然后用它推导...

2018-07-16 14:38:50 2147 2

原创 Emgucv不完整图像分割试验(三)——纹理+色彩分割

图像分割的目的是将感兴趣的物体从图片中提取出来,分割的算法有很多种,基本都是围绕三要素:颜色、形状、纹理去提取。一般我们常用颜色和形状,因为纹理的数据比较难获取(C#语言下资源很少)Opencv3.*以上版本是存在灰度共生矩阵的函数的,很遗憾的是Emgucv下我没找到灰度共生矩阵相关,虽然实现上应该挺简单的。最后通过同为C#下的图像处理哭库Afroge实现,曲线救国。完整可获取参数如下图所示:获取...

2018-07-05 14:05:50 2481

原创 Emgucv不完整图像分割试验(二)——百度api识别图像

做偏了,最近突然需要识别,直接调的百度api,涉及到很多小知识点,老样子罗列一下。1.c#winform模拟post数据 public static String getAccessToken() { String authHost = "https://aip.baidubce.com/oauth/2.0/token"; HttpC...

2018-05-31 13:38:58 651

原创 Emgucv不完整图像分割试验(一)——Emgucv下摄像头调用,c#下listview的用法

总体目标是做个一个各类图像预处理的合集,方便自己理解函数。首先第一个问题就是图像获取,原先一直用Afroge的摄像头获取(理由是能看到设备名称),但这次反正是自己用,就直接Emgucv用了。还是无力吐槽,好端端的Capture改什么VideoCapture。 private void OpenCapture_Click(object sender, EventArgs e) { ...

2018-05-29 22:27:53 966

原创 VS平台下调试JS代码设置

这篇文章很水,纯粹是为自己做个MARK。首先打开IE浏览器,在工具里对“Internet选项”进行设置,然后在打开的对话框中点“高级”,在“高级”中选中“显示每个脚本错误通知”,还有不要选中“禁用脚本调试(。。。)”那两项。然后运行你的网站即可。如果断点仍未命中,尝试检查:1.JS调试是否启动。2.运行浏览器是否为IE...

2018-05-22 00:09:17 5913

原创 C#基于NAudio的声音识别(二)——MFCC+SVM/BP

书接上文,切割后的文件转换特征为MFCC(细节不表了,网搜的代码)。声音的特征和识别最好的组合绝对不是MFCC+SVM(后面我会讲为什么),我只是怎么怎么方便怎么来,看到这的准备做声音识别的同学请果断变道。有了特征值就可以作为训练素材了,Emgucv版本更新快,不同版本的分类器参数设置方式不一样,这可以参见我以前的类似博客。以下将走过的坑分享一下:1.不定长声音的MFCC也不定长(废话),解决不定...

2018-05-02 18:41:07 4474 7

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除