小编tom*_*234的帖子

FindChessboardCorners无法通过长焦距镜头检测非常大的图像上的棋盘

我可以将FindChessboardCorners函数用于小于15百万像素的图像,如2k x 1.5k.然而,当我在DSLR的图像上使用它时,分辨率为3700x5300,它不起作用.

我试图使用resize()直接缩小图像大小,然后它工作.

显然,OpenCV源代码中存在一些硬编码或错误.

你能帮我解决一下,还是指点一下这个补丁?

我发现有人在2006年发布了类似的问题,在这里,所以它看起来像问题仍然存在.

我使用的代码就像

found = findChessboardCorners( viewGray, boardSize, ptvec,
                                CV_CALIB_CB_ADAPTIVE_THRESH + CV_CALIB_CB_FILTER_QUADS + CV_CALIB_CB_NORMALIZE_IMAGE + CV_CALIB_CB_FAST_CHECK);
Run Code Online (Sandbox Code Playgroud)

更新

就在这里澄清一下.我认为该算法适用于较大的图像分辨率,但当棋​​盘占据较大比例的图像时,它会失败.例如,当我在相同的相机位置使用50mm固定镜头时,FindChessboardCorners永远不会失败.将其更改为100mm固定镜头后,该功能开始停止检测图案.我认为这与比例或焦距有关.

下图是100mm镜头效果.

更新2

我为大图像添加了一个锐化滤镜,它开始解决问题.

首先我用过

//do a sharpen filter for the large resolution image
if (viewGray.cols > 1500)
{
  Mat temp ;
  GaussianBlur(viewGray,temp, Size(0,0), 105) ; //hardcoded filter size, to be tested on 50 mm lens
  addWeighted(viewGray, 1.8, temp, -0.8,0,viewGray) ; //hardcoded weight, to be tested.
//imwrite("test"+ imageList[k][i], viewGray) ;

}

found = findChessboardCorners( viewGray, boardSize, …
Run Code Online (Sandbox Code Playgroud)

c++ opencv computer-vision camera-calibration

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

如何在bash脚本中回显"$ x_ $ y"?

非常有趣的是,如果您打算使用代码使用bash显示"0_1"

x=0
y=1
echo "$x_$y"
Run Code Online (Sandbox Code Playgroud)

然后它只会显示

1
Run Code Online (Sandbox Code Playgroud)

我试过0_1但它不起作用.

所以我的问题是如何回显形式$ x_ $ y?我将在文件名字符串上使用它.

linux string bash shell

13
推荐指数
4
解决办法
2732
查看次数

如何在SQL Server中的SELECT中显示CLOB类型?

我有一个包含一列CLOB类型数据的表,它们都非常短,不超过20个字节,但是我无法在CLOB数据中看到实际的字符串.

例如,如果我使用SELECT *,在CLOB类型下,每个数据都像:

CLOB, 8 Bytes
CLOB, 15 Bytes
CLOB, 9 Bytes
Run Code Online (Sandbox Code Playgroud)

但我只是想看看CLOB数据的内容.

我试过了:

SELECT DBMS_LOB.SUBSTR(ClobColumnName, 20 ,1)
Run Code Online (Sandbox Code Playgroud)

它不起作用,错误是:

错误代码:4121,SQL状态:S1000
无法找到列"DBMS_LOB"或用户定义的函数或聚合"DBMS_LOB.SUBSTR",或者名称不明确.

那么我可以问一下在查询中直接显示CLOB数据的语法是什么?

我正在使用SQL Server dbVisualizer.

t-sql database sql-server clob

13
推荐指数
2
解决办法
6万
查看次数

如何在片段着色器中使用gl_FragCoord.z在现代OpenGL中线性渲染深度?

我阅读了很多关于使用片段着色器获取深度的信息.

http://www.opengl.org/discussion_boards/ubbthreads.php?ubb=showflat&Number=234519

但我还是不知道这是否gl_FragCoord.z是线性的.

GLSL规范称屏幕上的范围为[0,1]而未提及线性与否.

我认为线性是至关重要的,因为我将使用渲染模型来匹配Kinect的深度图.

那么如果它不是线性的,那么如何在世界空间中线性化呢?

opengl shader glsl depth-buffer depth

9
推荐指数
3
解决办法
9822
查看次数

如何压缩指针?例如.任意位指针

我正在编写一个复杂的树数据结构,它存储了许多指针.指针本身占用了大量空间,这就是我期望保存的东西.

所以我在这里询问是否有这方面的例子.例如:对于64位数据类型,如果指向的数据肯定是连续的,我可以使用32位或更少的指针吗?

我找到了一篇名为"关联数据结构的透明指针压缩"的论文,但我认为可能有一个更简单的解决方案.

c++ algorithm gpu bit-manipulation data-structures

8
推荐指数
1
解决办法
1915
查看次数

如何从Observable.from中收集发射值的数组?

所以在Rxjs中,我有很多代码,

return Observable.from(input_array)
           .concatMap((item)=>{
               //this part emits an Observable.of<string> for each item in the input_array
           })
           .scan((output_array:string[],each_item_output_array:string)=>{
               return output_array.push(each_item_output_array) ;
           });
Run Code Online (Sandbox Code Playgroud)

但显然这是错误的,扫描将破坏concatMap中的代码,所以我想知道如何收集可观察from运算符中每个项的输出数组?

asynchronous reactive-programming observable rxjs angular

7
推荐指数
2
解决办法
1万
查看次数

UIImageView 内容模式不起作用

我有一个大图像 (1920*1080) 和一个较小的 UIImageView (320*568),它在故事板中缩放到全屏尺寸。

现在我想全屏显示这个大图像,但适合 UIImageView。

我已经尝试了所有内容模式,但它们都不起作用。每次它只显示图像的左上角全屏大小。

 [self.imageView setFrame:self.view.bounds];
 [self.imageView setContentMode:UIViewContentModeScaleAspectFit] ;
 [self.imageView setImage:image] ;
 [self.view insertSubview:_imageView aboveSubview:_previewView] ;
Run Code Online (Sandbox Code Playgroud)

那么在我的情况下可能有什么问题?这可能是 Xcode 故事板配置错误吗?

谢谢。

objective-c uiimageview ios

6
推荐指数
2
解决办法
6350
查看次数

Modern OpenGL 3.x及以上版本如何绘制图元?

我必须使用OpenGL(3.3,4.2)绘制大量原语,我知道使用glutSolidTeapot(); 我可以绘制一个过剩的茶壶原型.

但似乎没有从该命令生成的顶点数组,我不知道这种命令是否已被弃用.

我注意到许多现代OpenGL教程只是加载他们自己的原语并避免使用过剩,他们甚至从3d网格格式文件中加载了简单的几何.

我的目的是尽可能快地绘制这些原语.尽可能使用新的OpenGL.

那么如何在现代OpenGL中绘制基元呢?

opengl primitive glut deprecated

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

iOS图像处理管道,与核心图像库相比,GPUImage仍然强大吗?

我是iOS上新开发的图像处理应用程序,我在OpenCV上有很多经验,但在iOS甚至OSX上对我来说都是新的.

所以我发现主要是核心图像库和GPUImage库,用于正常的图像处理工作.我很想知道我应该选择哪一个作为iOS平台上的新手?我已经看到在iPhone 6上在iOS 6上进行了一些测试,看起来核心图像现在比GPUImage基准测试上的GPUImage更快.

我实际上是在寻找图像处理开发的完整解决方案,

  1. 什么语言 ?Swift,Objective-C或Clang和C++?
  2. 什么图书馆?GPUImage或Core Image或OpenCV或GEGL?
  3. 有一个示例应用程序?

我的目标是开发一些先进的色彩校正功能,我希望尽可能快地制作它,所以将来我可以使图像处理成为视频处理而没有太大问题.

谢谢

iphone image-processing objective-c ios swift

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

如何处理gitpython clone异常?

我正在尝试使用GitPython编写批处理克隆脚本,但是我找不到有效的例子,例如git url不存在,下载interupt等。

我实际上该怎么做?

我现有的代码:

giturl = 'https://github.com/'+username+'/'+hwName+'.git'
targeturl = os.path.join(hwfolder,username+'-'+hwName)
try:
    repo = Repo.clone_from(giturl, targeturl, branch='master')
except:
    #git url not reachable
    #download interupt
    #target local path problem
Run Code Online (Sandbox Code Playgroud)

python git gitpython

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