通过在linux中使用命令行获取灰度图片的“文本”边界框的坐标

正如标题所说的那样.

严格来说,我定义为灰度图像的“文本”边界框是一组4个坐标(x,y,x宽度,y高度),必须在该图像中定义一个具有最大非白色数的矩形区域像素并且同时是最小可能数量的白色像素(不占用最大量的非白色像素).我的引号中有文字,因为图像实际上不包含文本,因为图像只包含带颜色的像素.

在我的Ubuntu中安装了ImageMagick并在终端输入命令:$convert input.png -trim ouput.png,我得到:

通过在linux中使用命令行获取灰度图片的“文本”边界框的坐标

通过在linux中使用命令行获取灰度图片的“文本”边界框的坐标

在Web浏览器的新选项卡中打开两个图像,您将了解它们之间的差异,您还将了解我定义为“文本”边框的内容.
output.png实际上是我正在寻找的宽度和高度.我不知道如何获得x和y坐标.

这里提供的pdf页面的答案不符合我的标准,因为gs给我的“文本”边界框有很大的白边(实际上,据我所知,gs定义为pdf的“文本”边框)与我对图片的“文本”边界框的定义不同的东西.

解决方法:

我不理解你的描述中的所有单词,我认为一个图表会有所帮助,但如果你只是想知道-trim会做什么,因为你的示例代码暗示:

identify -format "%@" image.png
200x100+10+20

所以,对于你的形象,你得到

identify -format "%@" paper.png
406x620+38+68

这意味着你的盒子左上角右边38像素,左上角68像素,宽406像素,高620像素.

如果我用红色绘制那个矩形,我得到:

convert paper.png -stroke red -fill none -draw "rectangle 38,68 444,688" result.png

通过在linux中使用命令行获取灰度图片的“文本”边界框的坐标

获得相同结果但使用转换代替识别的另一种方法是:

convert -format %@ paper.png info:
406x620+38+68
上一篇:VMware 隐藏工具栏


下一篇:django create superuser failed