问题标签 [bgr]

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

c++ - 在没有 OpenCV 的情况下将 BGR 转换为 Lab

由于在色彩空间方面经验不足,我使用以下代码将 BGR 图像(每个通道范围从 0 到 255 的无符号字符数组)转换为实验室色彩空间:

我已经将生成的实验室图像重新转换为 BGR(使用 cvtcolor)以使用以下代码使用 OpenCV 显示它(我不想使用 OpenCV 进行转换,我只是用它来显示结果。基本上我想要了解色彩空间转换的工作原理):

但是,计算出的图像与原始图像不同。这是由于代码中的问题吗?

0 投票
0 回答
840 浏览

c++ - ImageWatch 中 YV12 和 NV12 的正确像素格式是什么?

有一个不错的 Visual Studio 扩展Image Watch

它可以在 RAM 中获取任意地址,并将其内容显示为带有@mem操作符的图像。

@mem(address, type, channels, width, height, stride):将原始内存解释为像素,从address( UINT64) 开始,具有通道type(请参阅像素格式)、channels( UINT32)、width( UINT32)、height( UINT32) 和stride( UINT32) 的数量。例子:@mem(myimg.data, UINT8, 1, 320, 240, 320)

根据帮助页面,它可以显示几种复杂的像素格式,BGR、NV12和YV12就是其中之一。

可选地,格式字符串可以与像素格式相关联。它指定了每个渲染通道的语义:

  • RG、紫外线

  • RGB、BGR、YUV

  • RGBA、BGRA

...

还支持许多特殊的 YUV 格式。在这种情况下,格式字符串还定义了数据布局。

  • NV12(两个平面:一个 Y 平面,一个压缩 UV 平面,在两个维度上都被 2 次采样)

  • YV12(三个平面:一个 Y 平面,一个压缩 U 和 V 平面,在两个维度上都被 2 次采样)

但是,我不清楚如何使 Image Watch 使用运算符显示图像NV12YV12格式@mem

帮助页面不包含太多信息。

我设法显示灰色单通道图像,指定UINT8为通道类型。我还可以正确显示通道类型 =UINT8和 3 个通道的 BGR 图像:@mem(pBGR, UINT8, 3, 640, 480, 640*3). 这在文档中有所描述,但并不明显。

我已经尝试了各种通道数量和格式字符串的组合,带或不带引号:、、、@mem(ptr, NV12, 3, 640, 480, 640*3)@mem(ptr, "NV12", 1, 640, 480, 640*3)-@mem(ptr, UINT8NV12, 3, 640, 480, 640*3) @mem(ptr, NV12UINT8, 1, 640, 480, 640*3)不走运。我只看到带有单词的灰色矩形[invalid]

YV12.

0 投票
1 回答
1920 浏览

python - 在 Python 中使用 OpenCv 转换颜色空间

如何将 BGRA 颜色空间内的图像转换为 HSV 并将 BGRA 转换为 YCbCR?我只知道从 BGR 而不是 BGRA 的转换。方法是不同的还是相同的?

您的帮助将不胜感激。

0 投票
1 回答
1097 浏览

python - 蒙版图像的 BGR 值(OpenCV、Python)

使用下面的图像..

车

...我正在应用此代码来创建一个圆形蒙版:

这是输出..

蒙面车

如何使用 OpenCV 找到圆的 BGR 值?

0 投票
0 回答
133 浏览

c++ - opencv中RGB通道的色度如何?

我有下一个问题

我想在 openCV 中使用这个方程

X = 蓝色通道,Y = 绿色通道,Z = 红色通道

但是当我运行我的代码时,我在 1 上有一个带有 3 个图像的窗口。

首先我提取亮度,因为我想要红色通道的色调。

有谁能够帮我?

这是我的代码:

0 投票
2 回答
150 浏览

opencv - 合并解压BGR通道后编译成功,但运行时出现错误:ILLEGAL OPERATION

我正在尝试从我已经拥有的 3 个不同的 CV_8UC1 图像创建 1 个 CV_8UC3 图像,即我正在尝试将我已经拥有的不同单通道图像分配到单个 1 多维图像中。 可能下面的代码直接与 3 通道图像完美结合,但如果合并和提取它会出现运行时错误非法经营

我不知道这个错误是从哪里来的,任何帮助都将不胜感激,TIA。

0 投票
1 回答
8750 浏览

python - cv2.cvtcolor bgr2gray 似乎得到一个错误图像

# 代码如下,实现了,但结果可能是错误的,不是我想要的灰度,有人帮我看看,看起来很简单,但我不知道哪里错了

导入 cv2 导入 matplotlib.pyplot 作为 plt 导入 numpy 作为 np 导入 matplotlib.image 作为 mpimg img = cv2.imread('calibration_test.png')

我使用的原始图像

丑陋的结果

0 投票
1 回答
853 浏览

python - Keras 图像预处理流程将 RGB 图像转换为 BGR

我目前正在使用 Keras 的图像预处理功能来增强一些训练图像数据。作为其中的一部分,我试图通过使用 ImageDataGenerator 类的 flow 方法将图像保存到目录来可视化增强:

https://keras.io/preprocessing/image/#flow

问题是我传入的图像是RGB,而目录中保存的图像是BGR。我正在做的唯一变换是旋转,为什么要将它们转换为 BGR?我可以通过在将图像传递给生成器流方法之前将图像转换为 BGR 来纠正这种情况。

生成器本身不生成 BGR 图像 - 这些图像仍然是 RGB 格式,它们只是在保存时被转换。

0 投票
2 回答
4555 浏览

python - 错误是什么:“ValueError:赋值目标是只读的”?

当我使用 cv2.imread() 打开 jpg 文件时,有时会失败,这可能是由于我使用了 BGR 格式。所以我切换到 PLT 以使用 RGB。

将图像转换为灰度时出现错误。:“ValueError:赋值目标是只读的”我怎样才能在这里更改我的代码以避免它?

0 投票
0 回答
89 浏览

c++ - 在opencv上更改图片的bgr颜色值

我下面的函数应该改变原始图片的颜色值,然后一旦这个过程完成,它应该用改变的颜色创建另一张图片。

当我使用命令 make 并运行整个代码时,我得到一个分段错误。我使用这个命令来运行代码

有人能告诉我我做错了什么吗?

先感谢您