用MATLAB将照片合成视频或者GIF图片、以及Photoshop制作GIF图片

用MATLAB将照片合成视频或者GIF图片、以及Photoshop制作GIF图片

一、用MATLAB将照片合成视频(我使用的MATLAB是2015版本的)

(1)、你需要需要合成视频的图片。

所有照片放在一个文件夹里面因为是使用Matlab的dir函数读取照片,所以读取时,你要先设置好文件名:图片名称按照“001、002、003...”排列。否则图片显示顺序就会出错。

如果图片是用matlab在循环里使用saveas(gca,[Path,num2str(i)],‘jpg‘);自动保存的图片源的话。注意这里的文件名称是以变量i保存。也就是在保存图片时如果不足十位或者百位不会在前面的自动补零。此时就需要你自己重命名,当然几百张,几千张照片让你一个个重命名未免太惨。

可以使用软件,小巧好用:http://pan.baidu.com/s/1hsiWhTy 密码:f794。下载就直接可以使用。

使用软件的时候会提醒下载新的版本,选择否,设置好之后执行修改之后会提醒更新,这时候点确定就行。

(2)、Matlab代码:

%制作视频

clear clc;close all;

tic;

srcDic = uigetdir(‘D:\MATLAB_WORKSPACE\Work_SAVE\picture\‘);%这里的地址就是你的图片所放的地址.

cd(srcDic);

allnames = struct2cell(dir(‘*.jpg‘));

[k,len]=size(allnames);

aviobj = VideoWriter(‘我的第一个视频.avi‘);%设置视频名字.

aviobj.FrameRate = 10;%这里设置你想要生成的视频的帧数.

open(aviobj)

for i = 1:len

name = allnames{1,i};

frame = imread(name);

writeVideo(aviobj,frame);

end

close(aviobj)

toc;

(3)、Matlab运行之后生成的AVI格式的视频就存放在你的图片保存的文件夹里面。

/*********************************************************************************************/

二、用MATLAB制作GIF图片(我使用的MATLAB是2015版本的)

(1)、你需要需要合成视频的图片。

这里的要求和上面制作视频的要求一样,这里就不赘述了。

(2)、Matlab代码:

clear clc; close all;

tic;

Path=‘G:\图片源\图片 - 副本\‘;%这里要注意这个路径要先添加在Matlab的工作路径下,不然会出错。

%参数调整

filename= ‘my_gif.gif‘; %你的gif文件的名字

t1=0.5; t=0.5;%t1:第一张图暂停的时间,t其他时间间隔,用来控制播放速度,单位秒

ext = {‘\*.jpeg‘, ‘\*.jpg‘, ‘\*.png‘, ‘\*.pgm‘, ‘\*.tig‘, ‘\*.bmp‘};  d = [ ];

for i = 1:length(ext)

d =[d; dir( [Path,ext{i}] ) ]; % cd:当前路径

end

str = {d.name};

if ~isempty(str)

[Selection,ok] = listdlg(‘ListString‘,str,‘name‘,‘Choose pictures‘,‘PromptString‘,...

‘Please choose pictures‘,‘SelectionMode‘,‘Multiple‘, ‘ListSize‘,[400,200]);

else

error(‘No picture find , add filename extension or change path.‘)

end

set(0,‘defaultfigurecolor‘,‘w‘);

for i = 1:length(Selection)

figure(i)

imshow((imread(str{Selection(i)})),‘InitialMagnification‘,‘fit‘)% Or :  d(Selection(i)).name == str{Selection}

title(str(Selection(i)));

frame=getframe(i);

im=frame2im(frame);%制作gif文件,图像必须是index索引图像

[I,map]=rgb2ind(im,256);

k=i-0;

if k==1

imwrite(I,map,filename,‘gif‘,‘Loopcount‘,inf,...

‘DelayTime‘,t1);%loopcount只是在i==1的时候才有用

else

imwrite(I,map,filename,‘gif‘,‘WriteMode‘,‘append‘,...

‘DelayTime‘,t);%DelaylayTime用于设置gif文件的播放快慢

end

end

toc;

(3)、这样产生的gif图片保存在你的Matlab的默认工作路径下,也就是你打开Matlab软件时,它默认的那个路径。不过图片你需要使用ie游览器打开才能动,或者用其他软件,比如PPT放映时。

/*********************************************************************************************/

三、Photoshop制作GIF图片。(我使用的Photoshop是Photoshop CS6)

如果你说你没有Matlab怎么办,没事!咱用Photoshop,使用Photoshop,你想把图片P成什么样,就能弄成什么样,不像Matlab那么冰冷。

咱一步一步来:

第一步:把你想合成的几张照片在Photoshop里打开(我用谢耳朵演示)

第二步:把几张照片拖到一个文件下

方便GIF图片显示顺序,可以利用图层名字,不容易弄混。

第三步:窗口-时间轴-创建时间轴

第四步:转换为帧动画之后复制出五帧,然后设置帧(因为我只有五张图片,你有几张图片就弄多少帧)

那个秒数就是每张图片显示的时间,可以自己设置,我设置的1秒。然后对每帧动画的图层进行调整,按空格键就可以预览。

第五步:不要直接保存,要储存为Web所用格式,循环设置为永久,可以播放看一下效果。之后就存储,然后保存,注意保存时图片名不要有中文不然会出错。

(3)、看一下效果:(我后来把显示时间改成0.5秒,看着好玩一点)

总的来说,Photoshop做GIF图片比Matlab要精细,适合数量少的,合成的GIF数量少,如果要求数量多,就只能使用Matlab循环不断生成不断生成。

时间: 2024-10-06 00:12:12

用MATLAB将照片合成视频或者GIF图片、以及Photoshop制作GIF图片的相关文章

jquery图片放大镜效果制作变焦镜头图片放大查看

jquery图片放大镜效果制作变焦镜头图片放大查看 http://www.17sucai.com/pins/demoshow/8511

PhotoShop制作GIF图片

步骤1.准备好静态图片     下面我在word里面写一行艺术字,如图:     然后,我又用截图工具把这个静态图片分割成小的图片.这里把所有需要制作成GIF的小图片,全部都放到一个文件夹中.如图: 步骤2:图片加入到PS图层中 点击将文件载入堆栈,选择文件夹,点击浏览,找到需要的文件夹.如图: 步骤3:制作动态效果 在窗口中,勾选"动画". 步骤4:图像的存储 效果预览:

02.photoshop制作透明图片步骤

1.首先打开PS软件和图片如下.文件-新建. 2.如下图背景内容选择-透明.在确定. 3.出现了白底这就是透明的. 4.将图片背景都去除 5.在选择文件-存储为 6.格式选择.GIF的文件.其它不是透明的哦.然后在保存. 8.出以以gif选项选正常在单击  确定.

PHP实例————制作水印图片

目前QQ空间和新浪微博等社交软件中,分享的图片大多都是添加水印的.添加水印之后的照片也就变得独一无二了,好像就是添加了一个专属的个人签名.可以很好的防止别人盗用你的照片,也能够让别人一看水印就能在上面得到一些关于照片的信息.今天写了一个给图片添加水印的函数,和大家分享一下.有了这个函数,给照片添加水印就显的方便多了.其实原理很简单,原图是一张图片,水印其实也是一张图片,只不过有的水印是白色或透明色背景,然后两张图片进行合成,就成了水印图片. 1.制作水印图片所需php函数 (1)getimage

关于解决 从相册中选择照片后无法剪切图片以及无法加载图片的问题

程序分析: 主要分两个部分 (1)先拍照,然后剪切,最后显示出来.    (2)从相册中选择一张照片进行剪切然后显示出来 代码参照<第一行代码>,书中的代码运行时(2)出现了问题,无法剪切图片且无法加载图片 MainActivity.java代码如下: 1 package com.example.lynn.choosepictest; 2 3 import android.content.Intent; 4 import android.graphics.Bitmap; 5 import an

一些浏览器智能翻转图片,php判断并复制(覆盖)带有Orientation图片翻转信息的JPEG图片

/** * 处理带有Orientation图片翻转信息的JPEG图片 * param $imagePath 图片资源路径 * param $dscPath 目标路径 * 照片中EXIF Orientation 参数让你随便照像但都可以看到正确方向的照片而无需手动旋转(前提要图片浏览器支持,Windows 自带的不支持) * * */public static function delImgOrientation($imagePath, $dscPath = null){ /* exif_imag

压缩图片操作和生成圆形图片

1.对本地相册库或相机拍摄下来的图片进行压缩处理,传进来的参数分别有:要压缩的图片和压缩后的大小. //压缩图片 + (UIImage*)imageWithImageSimple:(UIImage*)image scaledToSize:(CGSize)newSize { // Create a graphics image context UIGraphicsBeginImageContext(newSize); // Tell the old image to draw in this ne

WPF技术触屏上的应用系列(四): 3D效果图片播放器(图片立体轮放、图片立体轮播、图片倒影立体滚动)效果实现

原文:WPF技术触屏上的应用系列(四): 3D效果图片播放器(图片立体轮放.图片立体轮播.图片倒影立体滚动)效果实现 去年某客户单位要做个大屏触屏应用,要对档案资源进行展示之用.客户端是Window7操作系统,54寸大屏电脑电视一体机.要求有很炫的展示效果,要有一定的视觉冲击力,可触控操作.当然满足客户的要求也可以有其它途径.但鉴于咱是搞 .NET技术的,首先其冲想到的微软WPF方面,之前对WPF的了解与学习也只是停留在比较浅的层面,没有进一步深入学习与应用.所以在项目接来以后,也就赶鸭子上架了

一个iOS图片选择器的DEMO(实现图片添加,宫格排列,图片长按删除,以及图片替换等功能)

在开发中,经常用到选择多张图片进行上传或作其他处理等等,以下DEMO满足了此功能中的大部分功能,可直接使用到项目中. 主要功能如下: 1,图片九宫格排列(可自动设置) 2,图片长按抖动(仿苹果软件删除时,图标抖动效果),可进入删除状态,再次单击进入普通状态 3,图片设置最大上限,加号按钮自动隐藏 4,已选图片可单击进行重新选择 5,无需代理,直接调用对应属性就可获取所有图片,并与显示顺序保持一致 效果图如下: 1 // 2 // SZAddImage.h 3 // addImage 4 // 5