问题标签 [binary-image]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
275 浏览

c++ - 从二值图像中提取轮廓

我在 C++ 项目中处理来自 CASIA 数据库和 opencv 的二进制图像。我正在寻找一种仅提取轮廓(包含轮廓的边界框)的方法。原始图像是 240x320,我的目标是只在新图像中获得轮廓(比如说 100x50 大小)。我的第一个想法是获取行和列上“白色”像素的最小和最大位置,并在新图像中获取此矩形内的像素,但我认为这根本没有效率。如果您有任何建议,我将非常乐意听到。左边是输入,右边是输出。

输入输出

0 投票
1 回答
113 浏览

python - 计算二值图像中任何标记区域中两个像素之间的最大距离

我想找到任何标记区域中两个像素之间的最高距离或找到顶部和底部像素。如何做到这一点?你能解释一下与这个主题相关的算法吗?谢谢......

0 投票
1 回答
27 浏览

pdf - PDF 中使用的线条艺术或二进制图像的纯文本格式是什么?

我一直在进行从 InDesign 到 PDF 的一些测试导出,以查看如何处理图像,并发现 InDesign 在其设置中称为 Line Art 的二进制图像以某种文本格式存储。我附上了一个示例 PDF和代码(请注意,图像是单个像素,因此在您将其炸毁之前它可能是不可见的)。

0 投票
2 回答
1159 浏览

c++ - 如何识别二进制图中由线连接的孔

我从这个问题的投票最多的作者的回答中挑选了一个代码段:

https://answers.opencv.org/question/9863/fill-holes-of-a-binary-image/

将其重新格式化为:

我知道它使用洪水填充算法来尝试填充孔,并且我已经在另一个示例图像上进行了测试:

在此处输入图像描述

通过检测所有 9 个孔,它的效果非常好。

但是,我尝试了另一个稍微复杂的图像:

在此处输入图像描述

这一次它不起作用,它将用白色填充整个图形,它检测到的孔数为 1700。

我想我可能在这里缺乏大量的形态学知识,但我认为也许我应该先对失败的图像进行“缩小”,然后再将其插入作者的代码中?

专家能否与我分享一些想法,因为我在谷歌上找不到非常相似的孔检测图表。那么当两个孔与二进制图像中的白色路径连接时,孔有什么特别之处?提前谢谢!

0 投票
0 回答
90 浏览

matlab - 用于处理二值图像区域的并行 for 循环(MATLAB)

我需要并行化一个 MATLAB 循环。我的代码本质上所做的是将每个提取的二进制对象(已经存储在二进制掩码中bw)按顺序分水岭,这些对象的大小超过某个阈值,分成更小的部分。分段后,我想用分段的片段替换每个二进制块,但代码给了我错误:

  • “PARFOR 循环无法运行,因为变量 'watershed_temp' 的使用方式”
  • “由于使用了变量‘img_seg’的方式,PARFOR 循环无法运行”
  • “'watershed_temp' 的有效索引在 PARFOR 循环中受到限制”
  • “'img_seg' 的有效索引在 PARFOR 循环中受到限制”

我应该如何索引这些图像以使代码正常工作?请帮忙。

感谢您提前输入!

试图

0 投票
1 回答
218 浏览

python - Python 相当于 MATLAB 中的“bwarea”

我正在尝试检测黑色图像中白色物体周边的不规则程度。我在 MATLAB 中找到了一些很好的代码,但它依赖于函数bwarea,这似乎是一个考虑周长的加权区域。我不确定python中的等效代码是什么-如果有人能给我一个等效的代码,我将不胜感激。或者,如果有人知道用于确定黑色图像(即二值图像)中白色物体的周长不规则性的良好度量,那也会有帮助!

0 投票
0 回答
85 浏览

reactjs - 通过 Express 服务器在 React 中显示来自 MongoDB 的二进制图像

我有一组存储在 MongoDb 中的二进制图像:在 此处输入图像描述

我在 Express 服务器中使用 mongoose 获取它并通过 API 端点发送:

在前端,我从 React 调用了这一点:

但是,当我对其中一张图像执行 console.log 时,我会得到一个从 0 到 255 的长整数数组(853514 项)。

我试图在这篇文章之后的 img 标签中显示该图像。我尝试了各种选择,但最新的一个是这样的:

}

导出默认图库;

它不显示图像。在控制台的浏览器中显示data:image/jpg;base64,[object Object]:1 GET data:image/jpg;base64,[object Object] net::ERR_INVALID_URL

看起来它正在尝试在某处发送请求。

你能解释一下这里发生了什么吗?我什至不知道用谷歌搜索什么。

0 投票
0 回答
298 浏览

python - 无法使用 otsu 阈值转换为二进制图像

我正在尝试通过 otsu 方法将斑马线图像转换为二进制图像。起初我计算了文件夹中所有斑马线图像的阈值,然后将其附加到一个名为的列表中th_li=[]

之后使用两个 for 循环,我将图像的所有像素值与相应的阈值进行了比较。如果像素值小于我设置的阈值,0否则255。然后我打印了图像数组,显示该数组仅包含两个值0255。然后将图像保存到另一个文件夹。而不是显示binary image图像看起来像yellowish. 但是在文件夹中保存的图像是二进制的。另一个问题是当我再次打印它包含的值的二进制图像时,除了0255

输出

之后,当我再次阅读图像时,它显示数组没有改变,一切都保持不变。

0 投票
0 回答
29 浏览

matlab - 像素到区域的转换无法在 Matlab im2bw 中正常工作

我正在编写一个简短的 Matlab 脚本来使用 im2bw 来计算图像中对象的面积。我正在尝试验证这些区域的计算是否正确,但是在参考图像上,我使用的最后一个正方形的区域减少了 2%,我不知道为什么。

图像为 1000x1000,正方形分别为 20x20、100x100、100x200、200x200。

我假设现实中的参考图像是 1mx1m 并相应地缩放,但 200x200 的正方形似乎并不完全正确。

0 投票
0 回答
146 浏览

python - 正确分离图像中的斑点

我正在编写应该检测希伯来字母的代码。这是我的初始图像:

在此处输入图像描述

2 个字母(ע 和 נ)是相连的,因此我无法正确识别它们。

所以我使用膨胀来分离它们:

膨胀后的图像如下所示:

在此处输入图像描述

第二张图片的问题是膨胀导致了两个以上的连通分量。所以我的问题是我怎样才能分别拍摄字母的 2 张图像,以及由于膨胀过程而添加的额外黑色成分。

所以我需要采取的是:

在此处输入图像描述

和:

在此处输入图像描述

分别地。

重要评论:

在这种情况下,字母是垂直连接的。它们也可以水平连接。任何帮助将不胜感激!