问题标签 [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 投票
0 回答
266 浏览

python - 使用 Cython 加速二进制腐蚀

我希望使用 Cython 加速二进制侵蚀图像处理功能,尽管我是 Cython 的新手。我没有看到我所期待的急剧加速。我正在寻求帮助来优化此代码,因为我仍然不熟悉如何利用 C 类型、索引、内存视图和对象来提高性能。下面是 Cython 函数、使用 SciPy 模块的 python 函数、setup.py 和 jupyter notebook 的源代码和输出。

Cython 代码 erode.pyx

Python 代码 erode_py.py

安装程序.py

Jupyter 笔记本

0 投票
1 回答
2865 浏览

python - 裁剪特定颜色区域并去除噪声区域(Python+OpenCV)

从彩色图像获取二值图像时遇到问题。cv2.inRange()函数用于获取mask图像(类似于阈值),我想删除不必要的部分,最大限度地减少mask图像的侵蚀。最大的问题是mask没有定期提取s。

样品

裂缝:

裂缝

典型的

典型的

理想一:

理想的

我的第一个目标是将第二张照片作为第三张。我猜想获得面积最大的轮廓并删除其他轮廓(也适用于mask)将是可行的。但是找不到方法。

第二个问题是我上面描述的想法不适用于第一个图像(裂缝)。这种图像可以被丢弃。但无论如何,它应该被标记为裂纹。到目前为止,我对此没有任何想法。

我做了什么

这是输入图像和代码42_1.jpg

如果代码是用 编写的,那就太好了python3,但一切都会好起来的。

0 投票
1 回答
288 浏览

matlab - 如何旋转连接的组件以使它们在 Matlab 中直立?

目前我正在使用数独网格并且我有二进制图像。我Regionprops用来获取连接组件的区域,然后将图像的其余部分变为黑色。在此之后,我调用 OCR 方法来尝试读取数独数字。问题是这仅在图像中的数独网格笔直且直立的情况下才有效。如果它旋转一点,我就无法提取数字。这是我到目前为止的代码:

im_binary二值图像在哪里

im_out是输出图像

stats是从regionprops包含连通分量的区域返回的对象

我知道我可以通过执行以下操作在获得 OCR 结果之前旋转图像:

但是我不知道网格的角度是什么,因为这是循环多个图像的函数的一部分。我研究了该regionprops方法,因为我可以从那里拉出一个属性“方向”,但我不明白我将如何实际使用它。它还声明regionprops将返回一个介于 -90 和 90 之间的值,但我的图像可能会旋转 90 度以上。

0 投票
1 回答
288 浏览

python - TensorFlow查找具有匹配值的像素

我正在尝试创建用于训练 2 类语义分割网络的数据批次。目标分割图像有 2 层,第一层为 1 类的所有像素,否则为 0。第二层具有反转的像素。

在数据集中,我的输出图像是带有[255,255,255]和的 3 通道 rgb 图像[0,0,0]。输入和输出图像存储在 tf-record 文件中。

当我在 numpy 中进行实验时,我使用以下代码创建了一个 2 通道二进制图像:

这给了我想要的 2 层 1s 和 0s 图像。

我试图在 tensorflow 中重复它,我是新手。我试过了c1_pix = tf.where(tf.equal(op_img, [[[255,255,255]]]))。它似乎有效,但它返回 1 和 0 的 3 通道 int64 张量,我无法反转它。

有人可以帮我解决这个问题吗?

谢谢,

0 投票
0 回答
157 浏览

python - Python中考虑邻域的条件掩码

我想通过使用灰度条件对 2D numpy 数组进行二值化,但考虑到 4 个连接邻域。猜猜面具可能是这样的

换句话说,我不想从图像中提取孤立的像素,因为我可以简单地使用numpy.whereor来做到这一点new_array[array == 20] = 1。我要使用的条件实际上是一个区间,并且该区间中具有 4 个邻居且值也在此范围内的所有像素都可以打印为 1。

0 投票
1 回答
1041 浏览

php - 从二进制数据图像中获取图像类型并将其转换为 PHP 中的实际图像

坦率地说,我不确定这是否是另一个问题的重复,因为上下文应该不同。

我目前正在使用一些返回状态和内容(二进制数据图像)的 API,我将首先对其进行 base64 编码。问题是如何最初获取二进制数据形式的图像类型,然后将其转换为具有类型扩展名的实际图像。在这种情况下,我使用 PHP,因为它涉及后端任务。谢谢。

更新:对于这种情况,我从外部站点 api 获取二进制形式的图像。我使用 file_get_contents 但它返回空或 null。当我使用 base64_encode 时,它​​会将图像显示为编码数据。问题是我需要将其转换为普通图像。我尝试将getimagesize编码和解码并尝试打印输出并返回空。我还缺少什么步骤吗?

0 投票
0 回答
96 浏览

matlab - 光照不均匀图像的二值化

我正在尝试对以下图像进行二值化,该图像不是在理想的实验室条件下拍摄的,因为光线不均匀。在此处输入图像描述

我的目标是得到一个结果,它将图像的背景显示为白色,背景上的水滴显示为黑色。我正在使用以下代码来实现这一点:

我得到的结果如下:

在此处输入图像描述

关于如何更适当地处理图像以获得更均匀的结果的任何想法(即无论液滴上的阴影如何,液滴都是黑色的)?

0 投票
1 回答
13342 浏览

python - 如何在 Python 中读取文件并将其转换为二进制图像

我是 Python 新手,我想阅读 jpg、png 之类的图像。并将其转换为二进制图像。这是我的工作:

0 投票
1 回答
415 浏览

phpmailer - 我正在发送带有图像的电子邮件。我只有二进制代码。有没有办法将它发送到电子邮件正文?

如果我使用此代码,它会向我显示图像。但我想在我的电子邮件正文中发送这个。但是当我编写此代码时,在电子邮件正文中,它仅显示带有二进制代码的图像标签。

如何将此图像作为带有二进制代码的电子邮件正文图像发送?

有没有办法发送这个?

我再说一遍,我只有 Image 的二进制代码。

我正在用 phpmailer 发送邮件。

0 投票
1 回答
73 浏览

image - 如何从二值图像的主要区域中删除由几个像素连接的小区域?

我有以下图像,这是我在分割过程后获得的。

在此处输入图像描述

我应该使用哪个函数或算法来删除通过极少数像素连接到主要分割区域的小区域(用红色圆圈标记)?我知道bwareaopen,但这只能用于删除根本没有连接的区域。