首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将YUYV图像压缩为jpeg

如何将YUYV图像压缩为jpeg
EN

Stack Overflow用户
提问于 2013-10-09 20:49:18
回答 1查看 3K关注 0票数 4

(交叉张贴到libjpeg-turbo用户列表。)

我对libjpeg-turbo有意见。

tjCompress2函数需要一个RGB或灰度图像来压缩。

代码语言:javascript
复制
http://libjpeg-turbo.sourceforge.net/ljtdoc.branches_1.3.x/turbojpeg-c/group___turbo_j_p_e_g.html#gaba62b7a98f960839b588579898495cf2

(对不起,当链接发生故障时,您必须粘贴该链接。)

我的网络摄像头( PS3 EyeToy)具有以下特点:

代码语言:javascript
复制
chris@raspberrypi ~ $ v4l2-ctl --get-fmt-video
Format Video Capture:
    Width/Height  : 320/240
    Pixel Format  : 'YUYV'
    Field         : None
    Bytes per Line: 640
    Size Image    : 153600
    Colorspace    : SRGB

转型上看,YUYV似乎相当于JPEG所需的YCbCr (尽管与亮度相比,它有一半的Cb和Cr数据)。我理解得对吗?

我知道如何使用矩阵将YUYV转换为RGB,但在不需要任何颜色空间的情况下,执行两个颜色空间更改似乎是在浪费稀缺的CPU周期和颜色精度。

是否有可以直接将YUYV图像压缩成JPEG的函数?

EN

回答 1

Stack Overflow用户

发布于 2014-04-28 07:14:36

自从提出这个问题以来,tjCompressFromYUV函数已经在TurboJPEG API中实现了。它以YCbCrYUV格式获取图像,并将其转换为JPEG图像。

但是,要使用YUYV API压缩TurboJPEG图像,仍然需要将YUYV转换为Y-Cb-Cr像素格式。

使用YUYV映像作为YUV映像并对4:2:2进行次采样的可能性也很小,因为这将导致每个UV组件有两个Y组件,但如果本源是准确的,则有四种可能的方法来放置YUVY组件。但要想取得积极的效果,就有1/4的机会可以发挥作用。

否则,在将图像转换为JPEG之前,还可以使用PNGU或类似的方法对图像进行转换,因为这个库能够“以png RGB8格式保存YCbYCr图像”。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19282402

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档