电子产业一站式赋能平台

PCB联盟网

搜索
查看: 19|回复: 0
收起左侧

MATLAB|ikun小黑子们请收下这封律师函警告

[复制链接]

260

主题

260

帖子

1829

积分

三级会员

Rank: 3Rank: 3

积分
1829
发表于 2023-9-4 11:39:00 | 显示全部楼层 |阅读模式
点击上方蓝字和“好玩的MATLAB”一起快乐玩耍吧!+ ]) L9 j- ^0 H  _/ }1 x
/ v' R9 I' l9 m

xts1ec3wan364024880050.jpg

xts1ec3wan364024880050.jpg
. F3 Y- A. J8 s& A+ Y1 p) X
好玩的matlab" L0 \3 D4 l$ b
带你解锁不一样的matlab新玩法
% z+ ?# w( _1 l$ g- B
4 Z. N8 L) {& u; g# w8 X在坐的小黑子们请收下这封律师函警告,喜欢此推文的小伙伴们记得点赞+关注+分享
8 @' a% P" Q5 u( p6 o* J5 t

2n0lwjue5iy64024880150.png

2n0lwjue5iy64024880150.png
1 b' ?+ y7 [% ~
$ z7 @: }- X% j# H, ?, C' U0 L  K* f

eopegefhfmk64024880250.png

eopegefhfmk64024880250.png
% B; L0 n% B$ v, v$ x1 B6 ]
运行效果
, ^  s  [/ k4 j- W0 Z, b, |7 o. @4 ]8 E# z8 J
思路:把视频转换成帧数,然后批量读取图片,图片处理思路和之前推文一样,图片坐标系转换成笛卡尔坐标系,然后逐帧生成mp4。因为图片太大,图片转换成mat数据格式超过2g太大了,所以我选取了其中一部分帧数图片。
) Q( f- m8 k) f  ~* C% |$ J  \源码: v7 r  ?7 l. }5 e: \8 _+ }
代码和数据文件:见推文末,或者评论区
  • clc;clear;close all;%--------------------------------------------------------------------------% @Author: 好玩的Matlab% @公众号:好玩的Matlab% @Created: 09,03,2023% @Email:2377389590@qq.com% @Disclaimer: This code is provided as-is without any warranty.%--------------------------------------------------------------------------%% -------加载数据----------------disp('加载数据中.............')load('data.mat');load('sound.mat');disp('加载成功')
    - e2 x, M4 T: vn=1; %这里修改鬼畜音乐  1-> 鸡你太美  2-> 练习两年半  3-> 你干嘛sound(audioData{n},Fs{n})%播放音乐, H/ Y# _9 p# |; R5 s& ^2 A8 {8 k
    %% ------参数设置------------------x=6;y=6;%位置coef = 0.8 ;% 使用经验系数调整图像大小%% -------界面设置-----------------figure('Position',[476 122 857 744])hold on% 设置gca 属性ax=gca;ax.XLim=[0,11];ax.YLim=[0,11];ax.Box='off';  % 关闭轴边框ax.LineWidth = 1;  % 设置轴线宽度为1ax.XMinorTick = 'on';  % 关闭X轴的次要刻度线ax.YMinorTick = 'on';  % 打开Y轴的次要刻度线ax.TickDir = 'in';  % 设置主要刻度线方向向外ax.GridLineStyle = '-.';  % 设置网格线样式为虚线ax.GridColor = 'k';  % 设置网格线颜色为黑色(注意注释中的"红色"是不准确的)ax.XGrid = 'on';  % 打开X轴的网格线ax.YGrid = 'on';  % 打开Y轴的网格线ax.FontSize = 14;  % 设置字体大小为14ax.FontName = 'Times New Roman';  % 设置字体为Times New Romanax.XLabel.String = '公众号:好玩的Matlab';  % 设置X轴标签ax.YLabel.String = '公众号:好玩的Matlab';  % 设置Y轴标签ax.Title.String='公众号:好玩的Matlab';%% ------初始化视频对象-------------------------outputVideo = VideoWriter('ikun.mp4', 'MPEG-4');outputVideo.FrameRate = 24;open(outputVideo);idx=0;for i = 1:size(data,1)    img = data{i,1};    AlphaImg = data{i,2};    % 获取当前坐标轴信息    ax = gca;    xLen = ax.XLim(2) - ax.XLim(1);    yLen = ax.YLim(2) - ax.YLim(1);    spectRatio = ax.PlotBoxAspectRatio;    % 根据坐标轴范围计算图像的宽度和高度    if xLen >= yLen        w = xLen;        h = yLen / spectRatio(2) * spectRatio(1);    else        w = xLen / spectRatio(1) * spectRatio(2);        h = yLen;    end    % 使用循环绘制每个图像散点    xPic = [-w/2, w/2] * coef + x;    yPic = [-h/2, h/2] * coef + y;    % 绘制图像    Hdl(i)=image(xPic, yPic, img, "AlphaData", AlphaImg);    drawnow;    if i~=1        Hdl(idx).Visible='off';    end    idx=idx+1;    frame = getframe(gcf);% 获取当前帧    writeVideo(outputVideo, frame);% 写入视频帧    %  pause(0.001)end% 关闭视频close(outputVideo);disp('视频保存成功');sound(audioData{n},Fs{n})%播放音乐implay('ikun.mp4');%播放视频- -THE END- -- n  j7 p; Z6 t1 M

    4 i( [; E2 n) T4 {源码下载:链接: https://pan.baidu.com/s/1mPHalA8QuVtXxEZTqmlJnw 密码: 1234 参考资料:& o% `. X4 f' {. W  a
    【1】ikun图片源自网络,配音源自抖音,侵权请联系删除,【2】https://idmatlab.blog.csdn.net/article/details/83277507
  • 回复

    使用道具 举报

    发表回复

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则


    联系客服 关注微信 下载APP 返回顶部 返回列表