问题标签 [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.
python - Can I generate uint8 label using ImageDataGenerator() and flow_from_directory() in Keras?
I'm dealing with the 2D semantic segmentation task.
in Keras API Documents, these only has samples showing how to arrange dataset for image classification, not semantic segmentation.
So I arrange my image and label like this
But I found that the type of generated label images is float32, so I add a preprocessing_function function to label_datagen only to cast the dtype to uint8, but the generated label images' dtype is still float32, it seemed that preprocessing_function did nothing.
How can I repair this problem?
How to change my label data to uint8?
Is it a 'common practice' to add a preprocessing function to cast the dtype of label images?
Thanks for any advice!</p>
python - Keras 中的预处理功能不起作用
例如,在我的 2D 语义分割任务中,标签中的所有像素值都不是 0,1,2,而是 0,127,255。所以我想简单地向我的标签数据集的 ImageDataGenerator 添加一个预处理函数,
我的代码:
但似乎我的
预处理函数(图像)
对我的标签数据没有影响。
我是否以正确的方式使用预处理功能?我该如何修复这个?
matlab - 如何在我的环境中使用分类学习器?
我正在研究面部表情识别。我制作了一个包含 213 个图像的特征和类别的数据集。
- Step1:我的数据集的每一行代表一张图像的特征。所以对于 213 图像 213 行
- Step2:最后一列代表类如;1,2,3,4,5,6,7
- Q1:当我运行分类学习器并检查交叉验证时,准确性非常低。
- Q2:当我运行分类学习器并且没有检查交叉验证时,所有分类器的准确性都很好。
我不明白为什么?请帮我?如果有人已经经历过。
tensorflow - Keras VGG16 preprocess_input 模式
我正在使用Keras VGG16 模型。
我已经看到有一个preprocess_input 方法可以与 VGG16 模型结合使用。此方法似乎调用 imagenet_utils.py 中的preprocess_input 方法(视情况而定)调用imagenet_utils.py 中的 _preprocess_numpy_input 方法。
有preprocess_input
一个mode
参数需要“caffe”、“tf”或“torch”。如果我在 Keras 中使用带有 TensorFlow 后端的模型,我绝对应该使用mode="tf"
吗?
如果是,这是因为 Keras 加载的 VGG16 模型是用经过相同预处理的图像训练的(即将输入图像的范围从 [0,255] 更改为输入范围 [-1,1])?
另外,测试模式的输入图像是否也应该进行这种预处理?我相信最后一个问题的答案是肯定的,但我想要一些保证。
我希望 Francois Chollet 能正确地做到这一点,但是看看https://github.com/fchollet/deep-learning-models/blob/master/vgg16.py是他还是我在使用mode="tf"
.
更新信息
@FalconUA 将我带到牛津的 VGG,它有一个模型部分,其中包含 16 层模型的链接。有关preprocessing_input
mode
参数tf
缩放到 -1 到 1 并caffe
减去一些平均值的信息,请访问Models 16 层模型中的链接:信息页面。在描述部分它说:
“在论文中,模型表示为使用尺度抖动训练的配置 D。输入图像应通过平均像素(而不是平均图像)减法以零为中心。即,应减去以下 BGR 值:[103.939, 116.779、123.68]。”
image-processing - 谷歌视觉更好的 OCR 的理想图像尺寸是多少?
我已经使用谷歌视觉 OCR 有一段时间了。而且我观察到 OCR 结果随图像尺寸而变化。例如,尺寸为 720 x 1280 的图像比 360 x 720 的效果更好。有时反过来会更糟。
我对微软的 OCR API 也有同样的体验。
那么是否有一个理想的图像尺寸总能提供良好的 OCR 结果?图像尺寸如何影响 OCR 结果?
python - 如何分块加载非常大的mat文件?
好的,所以代码就像这样 X1 是加载的高光谱图像,尺寸为(512x512x91)我想做的基本上是裁剪 64x64x91 大小的矩阵,变化的步幅为 2。这给了我总共 49952 个图像,每个 64x64x91 大小但是当我运行 for 循环时,我得到了内存错误。我的系统有 8 GB 内存。
我有一个作为 Mat 文件加载的高光谱图像,尺寸为 (512x512x91)。我想使用这个图像的块作为我的 CNN 的输入,例如使用 64x64x91 的裁剪。问题是,一旦我从原始图像创建作物,我就无法加载数据,因为一次加载所有作物会给我带来内存错误。我可以做些什么来分批加载我裁剪的数据,这样我就不会收到这样的内存错误。我应该将我的数据转换为其他格式还是以其他方式处理问题?
python - 使用 keras ImageDataGenerator 时如何在测试阶段对图像应用归一化?
我正在尝试使用训练有素的模型来预测新图像。我的准确率是 95%。但是无论我输入什么,predict_classes 总是返回第一个标签 [0]。我想原因之一是我使用featurewise_center=True
and samplewise_center=True
in ImageDataGenerator
。我想我应该对我的输入图像做同样的事情。但我找不到这些功能对图像做了什么。
任何建议将不胜感激。
ImageDataGenerator
代码:
预测代码(我使用 100*100*3 的图像来训练模型):
11/14 更新:
我将代码更改为预测图像,如下所示。但是,即使我提供了用于训练模型的图像(并且获得了 95% 的准确率),该模型仍然可以预测相同的类别。有什么我错过的吗?
tensorflow - 当与初始模型的失真输入一起使用时,“颜色排序”是什么意思
我一直在寻找输入图像的预处理技术。在查看了 inception 模型的实现后:https ://github.com/awslabs/deeplearning-benchmark/blob/master/tensorflow/inception/inception/image_processing.py#L164 ,我发现他们使用的color_ordering
参数可以是 0 或 1。在这种情况下,颜色排序是什么意思?