关闭

.net字节流转换为Bitmap图像

本文背景:由于项目用到了C++库进行开发,该库一个回调函数中将位图数据的图像数据作为byte[]传入,用作显示。由于只有图像数据信息,而没有信息头等,所以直接使用Bitmap bitmap = new Bitmap(stream)来构造位图对象时会报参数错误。网上查找资料也未找到相关原因,不过据报错内容推测,应该是数据格式有误。所以考虑到了Win32下位图的格式,想到微软不会因为语言不同而搞两套不同...
阅读(358) 评论(0)

欢迎使用CSDN-markdown编辑器

Halcon子模板ROI计算对应精确定位,一般的做饭是首先粗定位,然后通过粗定位的结果在相对于此结果的某个位置中搜索圆、直线、矩形等进行精确定位,本文所讲的就是如何通过粗定位的结果去确定二次精确定位的搜索范围。 如下图,要粗定位正方形后通过红色线来精确定位,则粗定位后会找到正方形的中心(x,y),要在此基础上偏移(50,0)后去搜索直线。本文旨在说明如何确定搜索的位置范围。 通常简单...
阅读(359) 评论(0)

文章标题

*本文旨在解决在调试过程中遇到如下问题时的解决办法: HEAP: Free Heap block XXXXA modified at XXXXB after it was freed 意思是:已经释放的内存地址A,在B地址处的值被改变(A和B都处于被释放的内存段内),即很可能出现了野指针,而很多情况下你会说,我的每个new和delete都是成对的,在delete后将指针赋值为NULL。但是我想说...
阅读(156) 评论(0)

HEAP: Free Heap block XXXX modified at XXXX after it was freed

*本文旨在解决在调试过程中遇到如下问题时的解决办法: HEAP: Free Heap block XXXXA modified at XXXXB after it was freed 意思是:已经释放的内存地址A,在B地址处的值被改变(A和B都处于被释放的内存段内),即很可能出现了野指针,而很多情况下你会说,我的每个new和delete都是成对的,在delete后将指针赋值为NULL。但是...
阅读(1133) 评论(0)

ADO编程笔记-记录遇到的问题

ADO编程学习过程中遇到的问题: 1、错误将_RecordsetPtr类型定义为了_Recordptr,在打开记录集时导致抛出异常。提示不支持的操作。 2、在循环遍历表中的字段时,循环变量定义为了int i=0;导致抛出异常,错误的代码为unknow error 0x800A0CC1,百度了半天都没确定具体原因,后来无意中的修改解决了问题。 for(long i = 0;i<Col...
阅读(198) 评论(0)

vc++经典技巧总结

vc++经典技巧总结 1."属性页的添加: 创建对话框的类,该类要从CpropertyPage继承;然后在要添加该对话框为属性页的类(头文件)里创建CpropertySheet类的一个对象m_tabsheet和新创建的对话框类的对象m_skatch;最后,在.cpp文件里的OnInitDialog()之类的函数里实现如下代码: m_tabsheet.Creat...
阅读(613) 评论(0)

MFC的OnMouseMove移动位置和OnMouseWheel缩放实现

1. 基本作用 OnMouseMove响应鼠标移动时间 OnMouseWheel响应鼠标中键的滚动   2. 参数说明 afx_msgvoidOnMouseMove(UINTnFlags, CPointpoint); nFlags说明:指示虚拟按键是否按下 ,此参数可以是任何下列值的组合 MK_CONTROL 当CTRL键按下时 MK_LBUTT...
阅读(4949) 评论(0)

完成端口(CompletionPort)之客户端篇

**完成端口之客户端篇** 首先说一下这篇文章的初衷。不久前工作中要用到网络通信进行数据交换,既然要通讯当然要有服务器和客户端,于是乎把MFC中的CAsyncSocket搬过来用了,简单的重载几个函数就完成了数据收发,但是后续遇到了较多问题,首先多线程使用时很多时候无法触发OnReceive事件,再加上接收到数据后需要较多的等待,所以整个界面都遭殃了,窗口卡到拖不动···· 于是乎决定修...
阅读(1412) 评论(3)

Opencv图像在MFC中显示的几种方法

接触opencv后,其强大的图像处理功能令人折服,但是当把处理过程做成软件发布的时候就需要将处理结果显示给用户看,而我常用的还是MFC。归纳了网上的几种方式: 1:第一种方法比较优雅取巧。将opencv的窗口贴到MFC的图片控件上去。 2:通过opencv已经丢掉的一个类CvvImage类来将Mat类型的数据显示在DC上 3:通过手动转换,将Mat数据转换到CImage中,然后进行贴图显示 ...
阅读(3653) 评论(4)

RGB、YUV和YCbCr

申明,本文非笔者原创,原文转载自:http://blog.sina.com.cn/s/blog_a85e142101010h8n.html 之前对RGB、YUV和YCbCr一直没有清晰的理解和认识,今天打算做一个小结,结合网上的文章谈谈自己的看法,也希望有机会看到这篇文章的人能指点一二,相互交流,共同进步。     首先要说明,上述的RGB、YUV和YCbCr都是人...
阅读(243) 评论(0)

图像的采样(马赛克)

图像的应用(马赛克) 一、采样 采样就是指把时间域或空间域的连续量转化成离散量的过程。图像的采样其实就将多个像素用一个像素取代,每隔一定的间隔取一个像素。 我们首先要获得Image对象的数组,可以按下面进行:   PixelGrabber pg = new PixelGrabber(im, 0, 0, iw,  ih, pix, 0, iw); pg...
阅读(256) 评论(0)

图像几何变换

图像的集合变换 一、放射变换 最为常用的几何变换都是线性变换,这包括旋转、缩放、切变、反射以及正投影。在二维空间中,线性变换可以用 2×2 的变换矩阵表示。 1.旋转变换   绕原点逆时针旋转 θ 度角的变换公式是  与 ,用矩阵表示为:   2.伸缩变换   缩放公式为  与 ,用矩阵表示为:   3.错切变换   错切变换公式:      x = x0...
阅读(347) 评论(0)

Opencv中对矩阵的操作

Opencv中对矩阵的操作 有很多函数有mask,代表掩码,如果某位mask是0,那么对应的src的那一位就不计算,mask要和矩阵/ROI/的大小相等  大多数函数支持ROI,如果图像ROI被设置,那么只处理ROI部分  少部分函数支持COI,如果COI设置,只处理感兴趣的通道 函数 Description 说明 cv...
阅读(452) 评论(0)

灰度直方图

图像的统计特性 图像的基本统计分析量如下: 1.熵 一个 X 值域为{x1, ..., xn}的随机变量的熵值 H 定义为:,即熵的公式可以表示为: 上式我们取集合X为图像灰度值构成的集合,这样我们就可以得到图像灰度的熵值 2.灰度平均值,灰度中值已经灰度方差都能很容易得到 3.直方图的计算 我们来看一个灰度图像,让表示灰度出现的次数,...
阅读(462) 评论(0)

图像的时频变换--离散傅立叶变换

离散傅立叶变换 一直很纳闷,几乎所有数字图像处理的书都会介绍数字时频变换,但是却很少书会讲时频变换的作用,这也是让我一直很疑惑的地方(不过也极有可能是本人愚钝)。频谱技术通常用于提高图像的处理操作速率,频谱相当于是图像的特征,时频变换虽然是一种数学技巧,但是运用到数字图像处理上会方便和简单。研究的图像变换基本上都是正交变换,正交变换可以减少图像数据的相关性,获取图像的整体特点,有利于用较...
阅读(1986) 评论(0)
21条 共2页1 2 下一页 尾页
    个人资料
    • 访问:19775次
    • 积分:309
    • 等级:
    • 排名:千里之外
    • 原创:8篇
    • 转载:13篇
    • 译文:0篇
    • 评论:7条
    最新评论