问题标签 [image-preprocessing]

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 回答
473 浏览

machine-learning - ZCA 美白对训练有何影响?

我试图在张量流中实现形状检测器。为此,我有两个类,一个是垂直矩形,另一个是右箭头,如下图所示。每个类使用 190 个样本进行训练。

在此处输入图像描述 在此处输入图像描述

在此处输入图像描述 在此处输入图像描述

我对模型进行了两次训练,一次没有 ZCA 白化训练数据,另一次使用 ZCA 白化训练数据,使用相同的网络架构和相同的迭代次数。

下面的向下箭头图像用第一个模型测试时,预测为矩形,准确率为 99.99% 100% 准确

在此处输入图像描述

我想知道 ZCA 美白如何大幅改变准确率百分比,即使在训练中没有使用数据增强(如旋转)。

任何形式的帮助将不胜感激。

0 投票
1 回答
2738 浏览

machine-learning - python中用于机器学习的ZCA白化

我正在训练 1000 张 28x28 大小的图像。但在训练之前,我通过参考如何实施 ZCA 美白?蟒蛇

由于我有 1000 个大小为 28x28 的数据图像,经过展平后,它变为 1000x784。但如下代码所示,X 是否是我的 1000x784 图像数据集?

如果是这样,则意味着 ZCAMatrix 大小为 1000x1000。在这种情况下,对于预测,我有一个大小为 28x28 的图像,或者我们可以说,大小为 1x784。因此将 ZCAMatrix 与图像相乘是没有意义的。

所以我认为,X 是图像数据集的转置。我对吗?如果我是对的,那么 ZCAMatrix 的大小是 784x784。

现在我应该如何计算 ZCA 白化图像,我应该使用np.dot(ZCAMatrix, transpose_of_image_to_be_predict)还是np.dot(image_to_be_predict, ZCAMatrix)?建议将不胜感激。

以及一个使用示例:

0 投票
4 回答
39996 浏览

python - Numpy:零均值数据和标准化

我在教程中看到(没有进一步的解释),我们可以使用 将数据处理为零均值x -= np.mean(x, axis=0)并使用x /= np.std(x, axis=0). 任何人都可以详细说明这两段代码,我从文档中得到的唯一信息是np.mean计算算术平均值沿特定轴计算平均值,np.std并为标准偏差这样做。

0 投票
2 回答
706 浏览

opencv - 如何明确定义对象的边界?

是否有任何工具可以在图像中很好地定义边界。我正在使用 Python-OpenCV。它有这个功能的任何方法吗?

例如。

让我的输入图像是这样的。

在此处输入图像描述

您可以在边界上看到一些干扰。一些像素只是从边界投影。边界不是完美的直线。

所需的输出是这样的。

在此处输入图像描述

0 投票
1 回答
1314 浏览

python - Keras 图像增强:如何选择“每个时期的步数”参数并在训练期间包含特定的增强?

我正在使用 Keras 训练图像分类 CNN。使用该ImageDataGenerator函数,我对训练图像应用了一些随机变换(例如旋转、剪切、缩放)。我的理解是,这些转换在传递给模型之前会随机应用于每个图像。

但有些事情我不清楚:

1) 如何确保训练时包含图像的特定旋转(例如 90°、180°、270°)。

2)steps_per_epoch参数model.fit_generator应设置为数据集的唯一样本数除以flow_from_directory方法中定义的批量大小。这在使用上述图像增强方法时是否仍然适用,因为它们增加了训练图像的数量?

谢谢,马里奥

0 投票
1 回答
69 浏览

keras - 基于keras预训练模型的预测/恐惧提取是否依赖于pre_processing_input

Keras 应用程序具有已保存权重的预训练模型。这些权重与训练过的图像上的“preprocessing_input”的性质无关。现在,当我根据我的后端和模式提交我的一组图像进行特征提取时,imagenet_utils 将 preprocessing_input 并且处理的 iamge 数组将是在 -1 和 1 之间缩放的像素,或者每个颜色通道相对于ImageNet 数据集以零为中心。如果我遵循https://keras.io/applications/中概述的“使用 VGG16 提取特征”的过程,预测/特征提取不会导致不同的结果???

0 投票
1 回答
1523 浏览

python - tesseract ocr 的 PIL 预处理

如何提高 OCR 的准确性?

我正在使用pyocr调用tesseract 二进制文件,使用wand将 pdf 转换为图像,然后使用Pillow处理图像以进行 OCR。

已附上所有图片

我觉得这是可以做到的最好的预处理。

图像最初是从 PDf 中裁剪出来的,然后转换为灰度,然后上面的代码对其进行处理。

我在两者之间添加了一条线,发现它大大提高了准确性(感觉它会起作用)

1 准确 2 准确 3 不准确 返回 6563 8 1 4 来自 pdf 的灰度图像

0 投票
1 回答
434 浏览

machine-learning - 使用predict_generator和flow_from_directory时如何获取对应的image_id和label

我正在使用 keras.preprocess.image.ImageDataGenerator.flow_from_directory 生成图像批次。但是,当我尝试使用 model.predict_generator 预测标签时,我不知道标签和对应的 image_id。有人帮我吗?我的代码如下:

我可以得到结果标签,但是如何得到对应的iamge_id呢?

0 投票
1 回答
1325 浏览

python - Keras 中的 ImageDataGenerator

我正在使用 Keras 功能ImageDataGenerator()来生成训练和验证数据集。我试图了解这个函数在内部做了什么。此函数执行哪些预处理步骤?我在哪里可以找到这个函数的源代码?

0 投票
0 回答
1658 浏览

python - 在 numpy 中对 RGB 图像应用特定的高通滤波器

我正在尝试在将图像输入 CNN 之前对其进行预处理。

目标

使用以下等式在尺寸为 512x512(基本上是 (512,512, 3) 的形状)的 RGB 图像上应用高通滤波器(参考 1)后提取残差:

图片链接

其中I是图像,矩阵是高通滤波器。

最初,我想通过使用这里问题中定义的方法来解决问题。但他们使用了灰度图像。

假设

分离不同通道中的图像,然后将过滤器应用于通道,然后再次组合它们。

您认为这是解决问题的正确方法还是有更好的方法?我将如何在 Python 中解决这个问题?

参考

1)通过卷积神经网络进行隐写分析的深度学习

2)使用 Deep CNN 的相机模型识别

更新 目前,这是我的高通滤波器功能: