小编mev*_*ron的帖子

如何检查一个轮廓是否嵌套/嵌入opencv中

我有两个轮廓,我想检查它们之间的关系(如果其中一个是嵌套的).通常,我会将findContours函数与CV_RETR_TREE检索模式一起使用.但是,我从不同的来源获得了轮廓(使用MSER方法).我实际上不仅有轮廓,还有区域遮罩,如果有帮助的话.例如,假设我想将字母"O"分段,那么我将使用以下蒙版或轮廓:

1)

0 0 0 0 0 0
0 1 1 1 1 0
0 1 0 0 1 0
0 1 0 0 1 0
0 1 1 1 1 0
0 0 0 0 0 0 
Run Code Online (Sandbox Code Playgroud)

2)

0 0 0 0 0 0
0 0 0 0 0 0
0 0 1 1 0 0
0 0 1 1 0 0
0 0 0 0 0 0
0 0 0 0 0 …
Run Code Online (Sandbox Code Playgroud)

opencv image-processing hierarchy contour

9
推荐指数
1
解决办法
3130
查看次数

如何使用霍夫变换检测精确的预定义形状,如"W"?

假设我有一些扫描文档的系统,所有文档都使用相同的字体和字体大小.

在这些文件中,总会有相同的字母"W".让我们说它总是20 px很大.如何20 px在我的文档中设置hough变换以识别这个字母"W" ?

opencv image-processing computer-vision

6
推荐指数
1
解决办法
593
查看次数

复杂的形状识别

我需要完成演示项目,旨在识别X射线图像上的牙齿.我不熟悉这个主题,我不确定在这种情况下哪种方法更适合.(我在考虑纹理分割 - 但这只是一个猜测,我仍然不确定这是否是一个选项)

我需要做的是基本上获得牙齿的方向(角度)和放置在每个牙齿轮廓上的点集,以完成任务特定的计算.

请提供有关可能有用的方法和算法/库的建议.C#是可以执行的,但其他语言也可以.

提前致谢.

图像样本都与此类似(我特别感兴趣的是右边第二和第三颗牙齿):

opencv image-processing shape image-recognition itk

5
推荐指数
1
解决办法
2108
查看次数

将带空格的参数传递给CMake ExternalProject_Add BUILD_COMMAND

我正在尝试使用CMake的ExternalProject_Add(...)命令在Linux中交叉编译bzip2 .

但是,为了交叉编译libbzip,必须修改一些Makefile宏来执行构建.这是我当前的交叉编译变量:

set(bzlib_CROSS CC=${CROSS_PREFIX}gcc AR=${CROSS_PREFIX}ar RANLIB=${CROSS_PREFIX}ranlib LDFLAGS=-L${bzlib_MINGW_SRC}/lib CFLAGS=-Wall -Winline -O2 -g -I${bzlib_MINGW_SRC}/include)
Run Code Online (Sandbox Code Playgroud)

然后将此变量用于构建命令

set(bzlib_BUILD make ${bzlib_CROSS} PREFIX=${DEPENDENCY_DIR})
Run Code Online (Sandbox Code Playgroud)

CMake错误,因为它试图传递-O2,-g等make,这当然不起作用,但是当我尝试在CFLAGS变量周围添加引号时它说

cc1: error: unrecognized command line option '-Wall -Winline -O2 -g -I/long/path/here/include'
Run Code Online (Sandbox Code Playgroud)

是否可以使用CMake设置包含空格的Makefile宏BUILD_COMMAND?谢谢!

cmake cross-compiling

5
推荐指数
1
解决办法
2573
查看次数

图像中已知对象的方向

我有一张已知的简单物体的照片,例如棋盘.相机可以有不同的角度,距离等.

什么是"标准"物体检测算法来检测物体的位置,角度和倾斜?从这三个位置来看,位置可能是最简单的,后来的旋转和倾斜.

我知道这不是一件容易的事,并且可能有很多算法可以解决这个问题,但对于事先已知的物体,可能会有一些常用的解决方案(如人脸识别的特征脸)

algorithm opencv image-processing computer-vision

5
推荐指数
1
解决办法
265
查看次数

在Python中将argparse与sys.argv结合使用

我目前有一个脚本,它通过sys.argv变量使用文件globbing,如下所示:

if len(sys.argv) > 1:
        for filename in sys.argv[1:]:
Run Code Online (Sandbox Code Playgroud)

这非常适合处理一堆文件; 但是,我也想在argparse模块中使用它.所以,我希望我的程序能够处理如下内容:

foo@bar:~$ myScript.py --filter=xyz *.avi
Run Code Online (Sandbox Code Playgroud)

有没有人试图这样做,或者有一些关于如何进行的指示?

python glob command-line-arguments argparse

5
推荐指数
1
解决办法
8565
查看次数

在 CMake 中处理多个 FIND_PACKAGE 调用

我有一个关于FIND_PACKAGECMake 函数的快速问题。我有一个利用点云库 (PCL) 的项目。PCL 依赖于 Boost,我的项目也是如此。所以,在我的 CMakeLists.txt 的顶部,我有以下内容:

FIND_PACKAGE(Boost REQUIRED COMPONENTS program_options)

# Preserve project Boost required libraries
SET(Boost_PROJECT_LIBRARIES ${Boost_LIBRARIES})

FIND_PACKAGE(PCL 1.6 REQUIRED COMPONENTS common search)
Run Code Online (Sandbox Code Playgroud)

我的项目使用 Boost.program_options 库,而 PCL 需要其他几个库。当FIND_PACKAGE(PCL ...)运行时,它会覆盖前${Boost_LIBRARIES}与自己需要的库文件。我想出了一个解决方法来保存我的项目所需的 Boost 库,然后找到 PCL 包。

我对 CMake 大师的问题是否有更好的方法来处理 CMake 中的此类事情?或者,这可能是 FindBoost.cmake 或 FindPCL.cmake 模块中的一个错误?

c++ boost cmake point-cloud-library

5
推荐指数
1
解决办法
3988
查看次数

Qt:如何制作装饰丰富的弹出窗口而不是默认的QSystemTrayIcon弹出窗口

我有简单的通知应用程序,我正在使用Qt 4.7.1和C++编写一个位于系统托盘中的应用程序.每次有消息传来; 我需要它来弹出一个窗口.但是,我需要它丰富(即,我想添加颜色和图片).但是,我所拥有的只是默认的弹出消息框.如何创建新的更丰富的一个将始终弹出托盘图标?

c++ qt trayicon

4
推荐指数
1
解决办法
2486
查看次数

使用OpenCV和C++检测RGB颜色间隔

我想用OpenCV和C++检测视频或图像中的红色对象.有什么算法可以做到这一点?

我想比较一下颜色的关系.实际上,当亮度变化时,比率保持不变.所以我想确定感兴趣区域颜色的可接受值的间隔.

对于情况,我看红R(x,y)和G(x,y)/ R(x,y)和B(x,y)/ R(x,y).

然后,我将找到可接受值的范围:为了获得第一个想法,它从调色板图像红色中释放每个报告的最大值和最小值

我想找到这样的东西:

如果minR <= R(x,y)<= maxR且minG <= G(x,y)<= maxG minB <= B(x,y)<= maxB so couleur(x,y)= blanc else couleur( X,Y)= NOIR

opencv

4
推荐指数
1
解决办法
5万
查看次数

获取具有相同颜色的所有像素坐标

我想获得与一个像素具有相同颜色的所有像素坐标

List<cv::Point> GetAllPixels(cv::Point x)
{
//imp
}
Run Code Online (Sandbox Code Playgroud)

我怎么能在EmguCV或OpenCV中做到这一点?

c# opencv image-processing emgucv

4
推荐指数
1
解决办法
1268
查看次数