MATLAB 帮助中心
将图像转换为影片帧
F = im2frame(RGB)
F = im2frame(X,map)
F = im2frame(X)
F = im2frame(RGB) 将真彩色图像 RGB 转换为影片帧 F。
F
RGB
示例
F = im2frame(X,map) 将索引图像 X 和关联的颜色图 map 转换为影片帧 F。
X
map
F = im2frame(X) 使用当前颜色图将索引图像 X 转换为影片帧 F。
全部折叠
加载狒狒面部的索引图像。
load mandrill
使用关联的颜色图 map(包含 220 种颜色)显示图像 X。
figure image(X) colormap(map) axis off
制作一部影片,用于展示减少图像颜色数量的效果。总共将有八个影片帧。预分配一个结构体数组来存储影片帧。
F(8) = struct('cdata',[],'colormap',[]);
以循环方式,使用 imapprox 函数减少索引图像中的颜色数量。使用 im2frame 函数将图像转换为影片帧。第一帧是具有所有 220 种颜色的原始图像。第二帧有 128 种颜色。每个后续帧的颜色数量都依次减半。最后一帧的颜色最少,只有 2 种。
imapprox
im2frame
for j = 1:8 q = 2^(9-j); [Y,newmap] = imapprox(X,map,q,'nodither'); F(j) = im2frame(Y,newmap); end
要以每秒三帧的帧速率播放影片两次,请使用 movie(F,2,3)。
movie(F,2,3)
真彩色图像,指定为 m×n×3 数值数组。如果指定数据类型为 double 的图像,则值必须在 [0, 1] 范围内。
double
数据类型: double | uint8
uint8
索引图像,指定为 m×n 整数矩阵。
与索引图像 X 相关联的颜色图,指定为由范围 [0, 1] 内的值组成的 c×3 数值矩阵。map 的每行都是一个三元素 RGB,指定颜色图的单种颜色的红、绿和蓝分量。
数据类型: double
影片帧,以包含下列两个字段的结构体形式返回:
cdata - 存储为 uint8 值数组的图像数据。
cdata
colormap - 颜色图。对于真彩色 (RGB) 图像,此字段为空。
colormap
在 R2006a 之前推出
frame2im | getframe | movie
frame2im
getframe
movie
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
选择网站
选择网站以获取翻译的可用内容,以及查看当地活动和优惠。根据您的位置,我们建议您选择:。
您也可以从以下列表中选择网站:
如何获得最佳网站性能
选择中国网站(中文或英文)以获得最佳网站性能。其他 MathWorks 国家/地区网站并未针对您所在位置的访问进行优化。
美洲
欧洲
亚太
联系您当地的办事处