草庐IT

rgb2gray

全部标签

【音视频】实操YUV与RGB互转(planar模式 YUV420、YUV422、YUV444与RGB888)

前言提示:书写目的是为对YUV与RGB存储格式的了解,该代码可以直接用,也存在待优化的地方,后续优化,还请大家多多指点编译环境:LINUX下编译的,有gcc编译工具即可看图工具: 后续附上文件列表app_main.c主函数rgbtoyuv.c处理文件rgbtoyuv.h头文件Makefile编译规则1、主函数app_main.c#include#include#include"rgbtoyuv.h"intmain(){ //make_rgb24_colorbar(); char*RGBfilename="rgb888.rgb"; char*DstRGBfilename_1="dst_rgb88

c++ - 如何访问 Opencv 中的 RGB 值?

我对channel数的使用感到困惑。以下哪一项是正确的?//roiistheimagematrixfor(inti=0;i(i,j)[0];intg=roi.at(i,j)[1];intr=roi.at(i,j)[2];cout或者,for(inti=0;i(i,j)[0];intg=roi.at(i,j)[1];intr=roi.at(i,j)[2];cout 最佳答案 第二个是正确的,Mat内的rows和cols代表像素的数量,而channel与行数和列数无关。和CV默认使用BGR,所以假设Mat没有转换成RGB那么代码是正确的

c++ - 对 RGB 图像使用特征数组

我正在尝试使用Eigen库进行一些简单的图像处理。我将Array3f用于RGB三元组和Array来保存RGB图像。这似乎部分起作用,我可以方便地对图像进行逐分量加法、乘法和除法。但是某些操作(特别是涉及减法或取反)似乎会产生编译错误。这是一个最小的例子:#includeusingnamespaceEigen;intmain(void){typedefArrayMyArray;MyArraym(2,2);//allofthefollowingshouldhavethesamemathematicaleffectArray3fv=-Array3f(5.0f);//thiscompilesM

c++ - 使用 FFmpeg 将原始 RGB32 文件转换为 JPEG 或 PNG

上下文我使用C++程序将原始字节写入RGB32格式的文件(image.raw):RGBARGBARGBA...我希望能够以某种方式查看它。我有图像的尺寸。我的工具仅限于命令行命令(例如ffmpeg)。我访问了ffmpegwebsite有关说明,但它更多地涉及将视频转换为图像。问题是否可以使用ffmpeg将此文件转换为可查看的文件类型(例如.jpeg、.png)。如果可以,我该怎么做?如果不可行,我可以使用其他命令吗?这仍然不可行,有什么方法可以在C++程序中操作RGB32字节,使其更适合而不使用外部库?我也不想像this那样自己编码.jpeg. 最佳答案

c++ - 如何在 OpenCV 中对齐 Kinect 的 RGB 和深度图像?

我有一个C++项目,我在其中使用OpenCV和Libfreenect。我不想包含像OpenNI这样大而重的东西,并在此过程中创建OpenCV安装依赖项。我想使用提供的校准信息here消除和对齐RGB和深度图像。根据相机矩阵和畸变系数分别对图像进行去畸变非常简单。但现在我很困惑如何使用校正和投影矩阵来对齐RGB和深度图像,以便它们从相同的角度向我展示相同的内容。搜索了很长一段时间后,我无法确定它应该如何与OpenCV一起工作的流程。这是一个模糊的估计reprojectImageTo3D()和warpPerspective()可能会被使用,但我不确定如何使用。我该如何解决这个问题?我正在使

javascript - 将 RGB 颜色值转换为十进制

如何将RGB颜色值转换为纯十进制值?所以我有:RGB(255,255,255)是白色的它的十进制等值是:16777215我试过认为它可能只是:vardec=r*g*b;//butthisdoesn'twork虽然那行不通。有人知道从RGB(或rgba)转换为十进制的算法/方程式吗? 最佳答案 RGB整数通常被视为三个不同的字节,其中最左边(最高位)字节为红色,中间字节为绿色,最右边(最低位)字节为蓝色。您可以像这样检索这些单独字节的值:varc=0xff03c0;//16712640varcomponents={r:(c&0xff0

c++ - sws_scale YUV --> RGB 失真图像

我想将YUV420P图像(从H.264流接收)转换为RGB,同时调整它的大小,使用sws_scale.原始图像的大小为480×800。只需使用相同的尺寸进行转换即可。但是,当我尝试更改尺寸时,我得到了一个扭曲的图像,具有以下模式:更改为481×800会产生扭曲的黑白图像,看起来像是在中间被切掉了482×800会更加扭曲483×800变形但有颜色484×800可以(正确缩放)。现在遵循此模式-缩放仅在除以4之间的差异时才能正常工作。这是我解码和转换图像的方式的示例代码。所有方法都显示“成功”。intsrcX=480;intsrcY=800;intdstX=481;//or482,483e

c++ - RGB2BGR 选项从 cvtColor 中消失

我正在尝试使用opencv3.0.0(适用于以前的opencv版本)编译我的代码cvtColor(img,img,CV_RGB2BGR);并得到编译错误“CV_RGB2BGR”未在此范围内声明该选项在文档中也不存在如何使用新版本获得相同的功能(RGB2BGR)? 最佳答案 使用常量cv::COLOR_RGB2BGR代替CV_RGB2BGR。它也适用于其他转换,只需将CV_更改为cv::COLOR_即可。刚刚检查过它对我有用。 关于c++-RGB2BGR选项从cvtColor中消失,我们在

c - Windows COLOR_WINDOW 或 COLOR_BACKGROUND 的 RGB 颜色是什么?

在WindowsApi和GDI中,您可以使用默认的窗口背景颜色来绘制按钮和其他东西(Win98、WinXP+ClassicTheme等上的浅灰色)。它的rgb值是多少?所以我可以使用al_map_rgb(r,g,b)在Allegro中模拟准确的颜色? 最佳答案 这取决于用户设置。你应该使用GetSysColor函数检索DWORD值,然后使用GetRValue、GetGValue和GetBValue检索红色、绿色和蓝色分量值。 关于c-WindowsCOLOR_WINDOW或COLOR_B

c# - 我可以在不使用 pinvoke 的情况下在 C# 中获取系统颜色的 RGB 吗?

我想确定系统颜色(例如SystemColors.HotTrack)的RGB颜色。有没有一种方法可以在不使用P/Invoke和GetSysColor(不包括绘制位图和检查像素值)的情况下做到这一点? 最佳答案 byter=SystemColors.HotTrack.R;byteg=SystemColors.HotTrack.G;byteb=SystemColors.HotTrack.B;或intargb=SystemColors.HotTrack.ToArgb(); 关于c#-我可以在不使