opencv3.3.0-src2.rar
OpenCv版本:3.3.0。
添加了clearVec()接口的两个文件,一个头文件,一个源文件。
该接口用于消除opencv中生成的vector变量的内容,这样保证在同一模块中释放内存,从而防止程序崩溃。
对应的库:https://download.csdn.net/download/jszj/10579260,由于这个库上传的时候没有带上这个修改了的源文件,所以现在单独放上来
python3.6的配置文件写入时保留注释(更正一个bug)
python3.6,对其配置文件的读写进行了修改,目的是在设置值(会导致写文件)时,对原始文件中的注释进行保留。由于是对原工具中代码的修改,所以建议在使用此文件进行覆盖之前,先对原文件进行备份,防止在一些极端情况下本修改导致问题的出现而无法恢复原文件。
本版本是在前一次版本的基础上,进行了一个bug的修正
简单的udp收发库
这是一个简单的udp收发库,32位,采用vs2015编译。
内附.h、.lib、.dll文件,另外还有一个readme.txt文件对它的使用进行详细说明。
对于小项目或者是小工具类用起来非常方便
opencv3.3.0添加了clearVecs()接口的库
对应的OpenCv版本:3.3.0
编译环境:win7 64bit + vs2015
OpenCv库:x86目录为32位库,x64目录为64位库
包含了所有的工具及第三方库IlmImf、ittnotify、libjasper、libjpeg、libpng、libprotobuf、libtiff、libwebp、zlib
需要注意的是,本库不包含debug版本的内容,而只有release的版本
本包保留了编译出来的所有文件,包括dll、lib
源文件路径:Q:\soft\prog\OpenCv\opencv-3.3.0
本库添加了一个新的接口:clearVecs(),位置:include\opencv2\imgproc.hpp,该文件有有一个备份文件,在同一目录中
添加此接口的目的是解决传出的vector类型参数在析构时挂掉的问题,请参考:
https://blog.csdn.net/jszj/article/details/81317471
该接口相关的较为全面的代码请参考本目录中的reducecolor.cpp文件:
本文件包含了两个功能,分别为:
void myContours_2018720(Mat &frame;);
void myFindLK_2018726(Mat &frame;);
可以读取一张图片,然后调用任意一个接口查看效果。
其中本代码的主要目的是对新增接口 clearVec() 的调用。
所以如果采用了本sdk编译,则就不能用标准的sdk运行了,否则就必需对这个接口的调用注释掉才行。
2019.7.8:
修改了代码的两个源文件:https://download.csdn.net/download/jszj/11295127,一个头文件,一个源文件
在CDHtmlDialog中显示html脚本
最近两天在弄一个界面显示的事情,虽然要求不高,不过还是想做得好看一些,就想在htmldialog上来显示web脚本,这样也方便格式化显示。
但是这htmldialog只能显示url,而无法显示一段html脚本,于是通过研究和思路改变,也为了以后方便使用,特意写了个简单的dll库来实现这个功能,它可以加载url,也可以加载一段html代码。
加载url时,由于没有处理安全类的东西,所以可能会出现许多提示,所以此库不建议使用这一功能。
加载html代码时,应该是需要一个完整的代码,包括<html>等标签
工程说明:
都采用vs2015编译
showhtml 工程:主功能实现库,可以在其它程序中使用它,包含showhtml/showhtml.api.h文件,然后链接showhtml.lib。其提供两个接口:
CreateHtmlShow(),用于生成一个用来显示的窗口,它必需有一个父窗口,其返回值在后面显示时需要。如果返回值小于等于0,则表示失败
NavigateHtml(),用于加载一个url或者显示一段html代码,其第一个参数为CreateHtmlShow()的返回值。
CreateHtmlShow()接口返回值存在的意义,在一个程序中,可能会同时多个地方显示html内容,所以需要对每个显示添加标示
至于窗口关闭时,则库自动删除对应的web显示窗口。
shdemo 工程:html显示的测试工程
如有问题,请联系:
hyd2001_2008@163.com
2018.7.10
python3.6的配置文件写入时保留注释
python3.6,对其配置文件的读写进行了修改,目的是在设置值(会导致写文件)时,对原始文件中的注释进行保留。由于是对原工具中代码的修改,所以建议在使用此文件进行覆盖之前,先对原文件进行备份,防止在一些极端情况下本修改导致问题的出现而无法恢复原文件
opencv3.3.0 编译好的库
对应的OpenCv版本:3.3.0
编译环境:win7 64bit + vs2015
OpenCv库:32位,其中包含了一个64位的 ffmpeg库
本包保留了编译出来的所有文件,包括dll、lib、pdb,所以按照下面的路径存放源代码应该是可以调试的
源文件路径:Q:\soft\prog\OpenCv\opencv-3.3.0
如果下载的源文件放在此目录中,则应该可以调试
使用:
1. 把include加入到ide环境中
2. 把bin/debug、bin/release加入到ide环境中
3. 把include目录下的myopencv.h移到自己的工程目录中然后包含它
如果有用到第3方库,则也要把3rdparty目录加入到ide环境中
windows下的公共开发工具库
封装了3个windows下的常用功能函数,方便程序编写。分别是创建多级目录,获取当前日期时间,获取本机IP和计算机名称,实现了32位和64位两个版本,以及unicode和anscii两个种编码接口
nasm 2.11.08版本的win32工程
这是从官网上下的nasm 2.11.08版本的代码。
自己添加了vs2010的编译工程进来,即采用了vs2010对该编译器进行了编译(注意:为了能够编译通过,对代码做了少许修改,估计不影响正常的编译过程),这样以后就可以用它进行追踪编译过程了,甚至可以自己对其修改。
解压后,用vs2010打开win32目录下的工程就可以了
如有问题,请联系本人
屏幕量尺工具库
用于屏幕测量的一个工具库,所以需要二次开发来调用它。调用非常简单,只有两个接口,没有参数,也没有其它初始化什么的调用。
本库基于静态MFC库,采用vs2010 C++开发。
在调用开始接口后,会在屏幕上展现一个量尺,可以方便你观察一个区域的尺寸。
在压缩包中有效果图和开发、使用说明。
注:如果商业使用,请务必首先阅读压缩包中的开发说明文档
共享内存和管道通讯演示代码
在之前的共享内存通讯基础上,增加了管道通讯的演示代码。
这部分比共享内存的演示代码要稍微完整一些。
管道用的是非阻塞方式,如果用了阻塞方式,则收发不能同时进行,否则会被塞住,导致程序无响应。
注意:服务器端如果是共享内存,则客户商也需要打开共享内存,如果服务器端是管道,则客户端也需要打开管道
共享内存的进程间通信
此代码进行了共享内存的通信演示。
此演示非常简单,只是演示如何使用,没有考虑性能、方式等,如果需要拿到真正的代码中使用,则需要考虑其它额外的工作,比如方式、效率等。
使用vc6.0
工具栏的背景和图标的透明demo问题
目标:
1. 在工具栏上贴个背景图片
2. 工具栏上的各图标透明。这些图标是动态加载的BMP图片,请不要使用加载到工程中的图片,因为我需要在必要的时候动态改变这些图片。另外,最好不要使用icon,我现在的架构基本上只支持bmp图片,如果要改成icon的话,可能要花费些时间才行
我现在已经有一个正规的工程,可以贴背景图片上去,但是图标无法透明。现在新做了一个工程(专门用来调试的),只是派生了工具栏,并加载了一个图标。现在连背景都画不出来了。
请各位协助达到上面的两个目标。先看一下问题1是咋回事,然后再说一下目标2该如何实现。
关于目标2,现在的工程中,如果我不派生工具栏的话,图像应该已经是透明的了,但我一加工具栏就不透明了。
涉及到的关键内容有:
CToolbar(工具栏)、图标、背景图片、透明
Direct3D的主窗口演示
在Direct3D中,使用DXUTSetWindow()所关联的主窗口无法和CDXUTDialog类型的窗口一起工作,这是个演示demo,大家下载后帮我修改一个
VC6下对话框工程中的键盘按键(WM_KEYDOWN)演示
正常情况下,在对话框工程中无法响应WM_KEYDOWN消息函数,即添加此消息应射之后,程序永远不会进入到这个消息的处理函数中,所以也就无法捕获键盘的按键消息。
上网上搜索了一下,找到了篇:
http://tieba.baidu.com/f?kz=136722697
这应该算是一种方法。
在本次上传的演示代码中,没有使用这种方法。
经过实际的程序跟踪发现,对话框工程是可以捕获到这个按键消息,只是没有最终发送到WM_KEYDOWN中而已,但是在分发消息之前就可以看到这个消息。由此,我们在分发消息之前来捕获这个消息就可以了。演示代码中拐了个弯,把这个捕获到的消息,又重新向窗口发送了一次自定义消息,然后在WndProc()函数进行了处理
LG 未来窗(微笑) 775FT Plus电路图
这是从网上找到的,好像不太清楚
显示器型号:LG 未来窗(微笑) 775FT Plus CRT 17寸纯CRT平显示器
原网址:http://www.elecfans.com/soft/49/54/2008/200809188764.html
2002年LG的17寸纯平CRT显示器电路照片
2002年买的CRT显示器,LG,17纯平,这是它的一组电路图照片,因为现在它有时候会有扫描线而无法使用,这里让大家参考一下。
问题地址:http://topic.csdn.net/u/20090615/18/b5bead3e-92c6-4a93-999c-053ffe63dc29.html?seed=1734357582
direct3d贴图成功
根据网友dux003的修改,并在大家的帮助下,终于把图片用direct3d成功而且正确地显示出来了,非常感谢各位的帮助!
此为direct3D的贴图,原来是可以出来图像,但是颜色不正确,这个是改好的代码,其实就是贴图时的数据格式指定的不对造成的。大家可以下载看一看,少走些弯路
对应的帖子:http://topic.csdn.net/u/20080707/17/075587ca-369c-476a-b580-57f140b5de1e.html
directshow编译设置图1
需要在博客中使用图片,但里面不能放图片,就放到这里吧。这一张是编译需要的lib设置
vs2008下的淡入淡出效果实例(SetLayeredWindowAttributes)
用vs2008简单演示了淡入淡出的效果,其中没有判断windows的版本,所以在windows95和windows98上会失败,或者是程序崩溃,我没有测试过,只在vista上测试而已
使用的函数主要是SetWindowLong()和SetLayeredWindowAttributes(),其中中最核心的是SetLayeredWindowAttributes()函数的使用
注意:在淡入时,只使用了alpha,而在淡出时,还使用了color,指定的颜色会直接透明,其它的部分会淡出
入门级示例,可以以此为突破口,做出淡入淡出的效果
vc6.0的扩展文件 part2
很多人在用vc6.0编译某些程序时总是出现错误。大多数情况可能是在使用directx8.0或者更新的版本时出现的,比如:
d:\microsoft directx sdk (august 2008)\include\dsound.h(305) : error C2146: syntax error : missing ';' before identifier 'dwReserved1'
d:\microsoft directx sdk (august 2008)\include\dsound.h(305) : error C2501: 'DWORD_PTR' : missing storage-class or type specifiers
等
实际上,就是因为dsound.h中使用了DWORD_PTR,而实际上没有此关键字的定义,所以在编译时出现了大量的错误。一些人建议自已定义此关键字:
typedef ULONG DWORD_PTR
实际上,这不是一种好的解决方案,因为除了这一个定义,可能还有很多其它的定义,也就是一系列的定义都需要你一个一个去做
经过对比,发现vc98/include/中的basetsd.h中没有DWORD_PTR的定义,但扩展的文件中的basetsd.h中却有定义,所以使用本文件把vc98/下的include和lib两个目录覆盖掉即可解决这些编译问题
由于无法上传大于10M的文件,所以分成了两部分
vc6.0的扩展文件 part1
很多人在用vc6.0编译某些程序时总是出现错误。大多数情况可能是在使用directx8.0或者更新的版本时出现的,比如:
d:\microsoft directx sdk (august 2008)\include\dsound.h(305) : error C2146: syntax error : missing ';' before identifier 'dwReserved1'
d:\microsoft directx sdk (august 2008)\include\dsound.h(305) : error C2501: 'DWORD_PTR' : missing storage-class or type specifiers
等
实际上,就是因为dsound.h中使用了DWORD_PTR,而实际上没有此关键字的定义,所以在编译时出现了大量的错误。一些人建议自已定义此关键字:
typedef ULONG DWORD_PTR
实际上,这不是一种好的解决方案,因为除了这一个定义,可能还有很多其它的定义,也就是一系列的定义都需要你一个一个去做
经过对比,发现vc98/include/中的basetsd.h中没有DWORD_PTR的定义,但扩展的文件中的basetsd.h中却有定义,所以使用本文件把vc98/下的include和lib两个目录覆盖掉即可解决这些编译问题
由于无法上传大于10M的文件,所以分成了两部分
程序中资源的操作示例演示
本示例简单演示了如何对一个exe文件的资源操作,没有测试过dll和ocx,只在vista上测试过,其它系统上没有测试过
resattach_detech:
使用vs2008编译,使用了缺省的unicode编码。
作用:把选定的资源加入到指定的exe文件中
100res:
使用vc6.0编译,由于resattach_detech使用了UNICODE,所以这个工程也必需使用UNICODE。
如果vc6.0的unicode有问题,则请参考 http://blog.csdn.net/jszj/archive/2008/08/23/2817552.aspx 。
作用:把其中的资源释放出来
用法:
使用resattach_detech把一些资源加入到100res中,然后启动100res,点击释放资源按钮,即可把被加入的资源释放出来(资源本身并没有从100res中删除掉)
用到的API:
FindResource()、LoadResource()、LockResource()、FindResourceEx()、EnumResourceLanguages()、EnumResourceNames()、CreateFileMapping()、MapViewOfFile()、BeginUpdateResource()、UpdateResource()、EndUpdateResource()、EnumResourceTypes()
本演示做为新手的一个入门向导,本人也是刚刚使用该技术,所以有很多问题可能还没有遇到过
direct3d的贴图代码_ver2
请注意display.h中的预定义 STU_1<br>此版本为<direct3d的贴图代码>的修改,添加了采用dux003 的方法,但还是不行<br>问题说明请参考<direct3d的贴图代码>的说明<br>对应贴子:http://topic.csdn.net/u/20080707/17/075587ca-369c-476a-b580-57f140b5de1e.html?seed=675578815
direct3d的贴图代码
direct3d的贴图代码,使用directx9.0,所以需要安装directx SDK9.0,在exe目录中包含了要读取的图片文件和需要的效果图以及目前的效果图<br>由于图片的大小已经固定,所以对direct3d初始化时使用了固定的大小,目前问题:<br>1. 这是主要的,后面的暂时不重要。图像的颜色失真。有可能是yuv格式不正确造成的吗?但在对d3d初始化时,使用yuv之外的格式好象都不成功<br>2. 如何向表面上写字?<br>3. 使用渲染如何做?我现在使用贴图的方式(我这种提法没有问题吧?)。渲染和贴图哪个效率高一些?<br><br>有解决问题的,请给我留言或者发邮件都可以,非常感谢!
实际的播放效果
实际的播放效果,偏红和绿,而非指定的白色