【问题标题】:YUV video processing in MatlabMatlab中的YUV视频处理
【发布时间】:2013-10-13 08:08:43
【问题描述】:

我正在使用我从互联网上获得的这个功能:

>>[Y,U,V]=yuv_import('test.yuv',[176 144],150,0)

我来自:Convert YUV CIF 4:2:0 video file to image files

它打印出 yuv 文件 test.yuv 的 Y、U 和 V 分量。当我输入时:

>>Y

它显示了:

Y = 

  Columns 1 through 5

    [144x176 double]    [144x176 double]    [144x176 double]    [144x176 double]    [144x176 double]

............... 

  Columns 146 through 150

    [144x176 double]    [144x176 double]    [144x176 double]    [144x176 double]    [144x176 double]

还有..

>>size(Y)

显示:

ans =

     1   150

对 U 和 V 组件执行相同操作也显示了相同的结果。

还有..

>>Y(150)

显示:

ans = 

    [144x176 double]

我想要的是为 Y、U 和 V 创建一个数组,其尺寸为 [numberOfFrames 高度宽度] 或 [150 144 176]。我该怎么做?

【问题讨论】:

    标签: matlab video-processing yuv


    【解决方案1】:

    您的输出是元胞数组。

    >> Y = cat(3, Y{:} ); 
    

    应该为您解决问题。

    【讨论】:

    • 拥有 [numberOfFrames 高度宽度] 后,如何将其转换回原始状态?
    • @mc8 “原创”是什么意思?一个单元阵列?一个RGB?您可以使用permute[nFrames H W] 更改为[H W nFrames]。您可以使用mat2cell 转换回元胞数组...
    • 你能举个例子,说明如何使用 mat2cell 使用 size [numberOfFrames height width] 到 size [1 numberOfFrames] 或 [1 150] 像上面一样?
    猜你喜欢
    • 1970-01-01
    • 2012-02-29
    • 1970-01-01
    • 1970-01-01
    • 2012-11-22
    • 2012-11-05
    • 2012-02-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多