基于超像素分割的图像区域选取方法及源码

工程源码GitHub: yhlleo/SuperpixelRegionFill 抠取图像区域的一个小demo,借助图像超像素分割的方法,将图像成子分块,再利用种子填充算法,选取子块区域。 超像素分割方法,采用论文 SEEDS: Superpixels Extracted via Energy-Driven Sampling 提出的方法,对于物体的边界具有较好的保留,如下图所示。可以辅助目标检测中制阅读全文

模板类与模板函数的实例化导出

.h

dlllib.cpp

[crayon-5a671f2e8d2ce阅读全文

如何构建Windows平台下的动态库DLL

在构建动态库时,生成两个文件:导入库(.lib)和动态库(.dll)。GCC和mingw默认情况下会导出所有符号,但是vs默认情况下不导出任何符号。如果dll没有导出任何符号,则vs就不会生成导入库(这就是为什么vs构建dll时只生成了.dll,没有生成.lib的原因)。如果要导出函数或类型,必须使用__declspec( dllexport )。 在VS平台构建dll库时,CMAKE会添加如下预阅读全文

C/C++ "#"的作用和用法

1 #和##的作用和用法 C/C++ 的宏中,#的功能是将其后面的宏参数进行字符串化操作,简单说就是在对它所引用的宏变量通过替换后在其左右各加上一个双引号。##连接符号由两个井号组成,其功能是在带参数的宏定义中将两个子串联接起来,从而形成一个新的子串。但它不可以是第一个或者最后一个子串。

凡是宏定义里有用#或##的地方宏参数是不会再阅读全文

C/C++ 获取文件夹下的所有文件列表

提供一段C/C++代码示例,用于自动获取指定文件夹下的所有文件列表(包括子目录中的文件)。 代码文件可以在GitHub中下载: yhlleo/FindFilesWithinFolder 在查找文件时,对于子文件夹里的文件采用递归的方式获取:

运行示例如下: 文件树: 运行结果: 如果只想加载指定文件夹下当前一级的所有文件阅读全文

C/C++ 在处理文件所在路径下创建子目录

在一些图像处理或者数据处理时,需要给计算返回的数据指定一个存储路径,如果直接以被处理的文件所在路径下,并以其名命名自动生成一个文件夹,挺方便的,做法如下; CreateSubfolder.h

CreateSubfolder.cpp

比如,下面的例子,对一张图片抠出每个阅读全文

C/C++中相对路径与绝对路径以及斜杠与反斜杠的区别

1 绝对路径与相对路径 绝对路径表示相对容易得多,依次将文件所在盘符文件夹逐级展开就是绝对路径:

这里需要注意的是文件夹与文件夹之间的间隔符要用双斜杠\,C++中默认访问目录是生成工程可执行文件所在的目录,我们记为当前目录,相对路径按照相对于当前目录的位置大致可以分成三种: 读取路径与当前目录同级时,可以直接访问预操作文件名阅读全文

C/C++ uchar的一个有趣用法

图像处理中常常使用的一种数据类型uchar,一般它指的就是unsigned char,可以查到它的定义为:

是一种8-bit无符号整形数据,范围为[0, 255](与之相对应的是schar,定义为typedef signed char schar,取值范围是[-128, 127]),与8-bit图像的灰度级[0, 255]一一对应,阅读全文

C/C++ ShellExecuteEx调用exe可执行文件

以商业的软件Enblend为例,进行图像无缝拼接和匀光匀色,可以如下直接在Dos中使用命令行调用:

输入数据: 输出结果: C/C++中,有几种方法可以直接调用可执行文件exe,这里以最常用的ShellExcecuteEx函数为例。上面使用命令行操作,可转化为:

两者阅读全文