练习时长两年半的Matlab
效果展示
最近很火的用matlab对练习时长两年半的cxk的唱跳rap视频进行边缘检测,然后合成视频,趣称练习时长两年半的matlab。下面是效果图奉上。
代码实现
那具体是怎么实现的呢?让我们给出代码和解释。
代码可分为三块,第一块是将视频按帧读取成多张图片然后保存到文件夹中。
se = strel('line',11,90);
path_src='C:\matlab_ws\src.mp4'; %源视频存放路径
obj=VideoReader(path_src);
num=obj.NumberOfFrames;
pathImgOut='.\ImgOut\'%视频拆分为图片的存储路径
%一帧一帧的读取并存储到 pathImgOut
for i=1:numframe=read(obj,i);lujing=strcat(pathImgOut,num2str(i)); lujing=strcat(lujing,'.jpg');imwrite(frame,lujing)
end
第二块是利用matlab的边缘检测函数对上面得到的多张照片进行边缘检测,检测算法的选择较多,有robert,sobel prewitt,laplacian,canny等,各种算法有不同的特点和适用情况,这里不做展开介绍,详情可以看下面给出的参考链接。如果只是单纯的为了整活,随便选一种即可。之后把检测得到的图像结果保存到另一个文件夹中。
matlab边缘检测算子:https://blog.csdn.net/weixin_36815313/article/details/109899559
pathImgOut2='.\ImgOut2\'%图片边缘检测图片的存储路径
for i=1:num path_src=strcat(pathImgOut,num2str(i));p=strcat(path_src,'.jpg');f=imread(p);f=rgb2gray(f);roberts=edge(f,'roberts'); %roberts算子[m,n]=find(roberts==1);mh=scatter(n,-m,'.'); lujing=strcat(pathImgOut2,num2str(i));lujing=strcat(lujing,'.jpg');saveas(mh,lujing);
end
第三块是把第二块得到的边缘检测图像拼成一段视频,最终就是我们想要的视频。
WriterObj=VideoWriter('kbj','MPEG-4')
open(WriterObj);
for i=1:num %帧图数量pic=strcat(pathImgOut2,num2str(i));ppic=strcat(pic,'.jpg');frame=imread(ppic); % 读取图像,放在变量frame中writeVideo(WriterObj,frame); % 将frame放到变量WriterObj中
end
close(WriterObj);
合成的视频没有音频,如果需要音频大家可以去一些视频剪辑软件添加音频即可。
下面供上完整代码。
%% 第一部分
clear;
clc;
se = strel('line',11,90);
path_src='C:\matlab_ws\src.mp4'; %源视频存放路径
obj=VideoReader(path_src);
num=obj.NumberOfFrames;
pathImgOut='.\ImgOut\'%视频拆分为图片的存储路径
%一帧一帧的读取并存储到 pathImgOut
for i=1:numframe=read(obj,i);lujing=strcat(pathImgOut,num2str(i)); lujing=strcat(lujing,'.jpg');imwrite(frame,lujing)
end %% 第二部分
pathImgOut2='.\ImgOut2\'%图片边缘检测图片的存储路径
for i=1:num path_src=strcat(pathImgOut,num2str(i));p=strcat(path_src,'.jpg');f=imread(p);f=rgb2gray(f);roberts=edge(f,'roberts'); %roberts算子[m,n]=find(roberts==1);mh=scatter(n,-m,'.'); lujing=strcat(pathImgOut2,num2str(i));lujing=strcat(lujing,'.jpg');saveas(mh,lujing);
end%% 第三部分
WriterObj=VideoWriter('kbj','MPEG-4')
open(WriterObj);
for i=1:num %帧图数量pic=strcat(pathImgOut2,num2str(i));ppic=strcat(pic,'.jpg');frame=imread(ppic); % 读取图像,放在变量frame中writeVideo(WriterObj,frame); % 将frame放到变量WriterObj中
end
close(WriterObj);
练习时长两年半的Matlab相关推荐
- 时长两年半,WPS打开文档的速度慢竟被我成功解决了
你有没有经常因为WPS打开文档的速度慢,并且卡,有时让你卡到怀疑人生,其实,有一招,可以快速解决文档打开速度的慢. 网上搜了很多种办法,但都无法解决,但是有一天,我突然有个大胆的想法,进过了历时两年半 ...
- 大家好!我是练习时长两天半的像素画练习生,喜欢唱,跳,rap...
此风水宝地是本0美术基础钢铁程序员的像素画练习之处,如非练就火眼金睛者速速alt+f4. 当然,若有专业美术人士愿意指正,请疯狂批评! 1.男教师. 后期点评:图1没画阴影,特别是脖子没阴影和脸连起来 ...
- 练习时长两年半,二本学历,没背景,会唱跳篮球,美团四面成功拿下offer
个人背景 又逢"金九银十",年轻的毕业生们满怀希望与忐忑,去寻找.竞争一个工作机会.已经在职的开发同学,也想通过社会招聘或者内推的时机争取到更好的待遇.更大的平台. 然而,面试人群 ...
- 【spring】集成Web、druid、jdbcTemple实现免登录时长两天半
CSDN话题挑战赛第2期 参赛话题:学习笔记 *学习之路,长路漫漫,写学习笔记的过程就是把知识讲给自己听的过程.这个过程中,我们去记录思考的过程,便于日后复习,梳理自己的思路.学习之乐,独乐乐,不如众 ...
- 时长一年半的前端练习生2022年终总结
2022感觉过得真快,还有一周就结束了,趁着周末有时间来总结一下2022做了什么.最近小
- python提取时长2s以内的单词音频的韵母基频,以及单词词长信息
python提取时长2s以内的单词音频的韵母基频,以及单词词长信息 提取信息自动存入当前工作空间中的excel文件,包括文件名.前字时长.后字时长.两字总时长.前字韵母基频.后字韵母基频.(10个点, ...
- 活动时长计算尝试用Lambada 实现责任链的代码优化
文章目录 活动时长计算尝试用Lambada 实现责任链的代码优化 原流程 原代码 主控流程 计算标准费率时长子过程 电访和面访活动计算标准费率时长 路演活动计算标准费率时长 问卷活动计算标准费率时长 ...
- 【Linux网络编程】TCP状态转换、半关闭、2MSL时长
------------->[Linux系统编程/网络编程](学习目录汇总) <-------------- 目录 1. 三次握手.四次挥手过程中的状态变化 2. TCP状态转换图 3. ...
- 卫星过顶计算matlab,一种圆轨道低轨卫星过顶剩余可见时长预测方法
一种圆轨道低轨卫星过顶剩余可见时长预测方法 [技术领域] [0001] 本发明涉及卫星通信领域,特别是涉及一种圆轨道低轨卫星过顶剩余可见时长预 测方法. [背景技术] [0002] 圆轨道低轨卫星是指 ...
- 计算两个时间之间的工作时长
计算两个时间之间的工作时长(小时)排除周末 package com.test;import org.apache.commons.lang3.time.DateUtils;import java.ma ...
最新文章
- FusionCharts参数的详细说明
- css之文本两端对齐的两种解决方法
- Java并发编程(8):多线程环境中安全使用集合API(含代码)
- C/C++ 中生成特定范围内的随机数
- echarts无数据时显示无数据_钣金无腻子数据还原
- mysql手注_php+mysql手注拿shell教程【朋友给的】
- BOM的window对象的属性及其方法
- Queue —— JUC 的豪华队列组件
- JavaScript闭包详解
- mysql映射表_MySQL报错找不到问题?可能是你的SQL用了关键字
- 朗威计算机保密检查取证工具,保密检查工具(中安兴坤、朗威、中孚)含国保测证书...
- 小米6线刷包php文件格式,小米6官方固件刷机教程_线刷|救砖教程图解
- windows虚拟网卡驱动开发~开源(建议收藏)
- java调用vba代码合成Excel
- 【全面总结】大厂测试开发面试常见面试题101道
- sql server日期时间转字符串
- 2017_11_23 学习echarts之饼状、柱状、gl(三维柱状)、map地图
- JavaSE 15 IDEA美化
- TDDFT计算软件Octopus学习笔记(三):能带结构(ZnO)
- python爬取文献代码_爬取Pubmed文献及影响因子并尝试下载的脚本
热门文章
- php 覆盖写入txt文件内容,PHP使用内置函数file_put_contents覆盖写入文件及追加内容的方法...
- 火狐浏览器打印网页不全_火狐浏览器网页显示不全
- 数据结构 WSADATA
- 雅思词汇真经单词共3672个
- Django查询关键字
- Yocto系列讲解[理论篇] 45 - bb文件中函数实操演示(3)继承自己的class
- 基于matlab的am调制与仿真,基于MATLAB的AM调制及解调系统仿真分解
- 「Python网络编程」如何让蔡徐坤同时唱跳rap篮球/初识多线程(二)
- 阴历阳历相互转换c代码
- OpenGL ES 之 2D 纹理介绍和使用