【办公类-117-01】20250924通义万相视频2.5——三个小人(幼儿作品动态化)

背景需求

和家长沟通时,提到孩子的绘画能力超前(涂鸦转向几何图形)

把其中一张作业变成动态化

第一张生成失败,

不过第二天它也显示了,

三个人,动起来,在跳舞,微笑,大笑

同样台词做了一张

变成了真人跳舞

又换了台词,做了几份

画纸上有三个简笔画人,请让他们动起来,在跳舞,微笑,大笑。

真的跳舞了

下载三个MP4

用代码将mp4转(5MB以内)GIF,才能把视频内容放在CSDN上

python 复制代码
'''
结题报告WORD 插入 MP4转gif动画(降低帧率)
deepseek、阿夏
20250718
'''
import os
from moviepy.editor import VideoFileClip

def convert_mp4_to_gif(input_folder, output_folder=None, scale=0.5, fps=5, colors=128):
    """
    修复版的MP4转GIF函数
    """
    if output_folder is None:
        output_folder = input_folder
    
    os.makedirs(output_folder, exist_ok=True)
    
    for filename in os.listdir(input_folder):
        if filename.lower().endswith('.mp4'):
            input_path = os.path.join(input_folder, filename)
            output_path = os.path.join(output_folder, f"{os.path.splitext(filename)[0]}.gif")
            
            print(f"正在转换: {filename}...")
            
            try:
                # 使用更稳定的方式读取视频
                clip = VideoFileClip(input_path)
                
                # 检查视频是否成功读取
                if clip.duration == 0:
                    print(f"警告: {filename} 可能为空或损坏")
                    continue
                
                # 调整尺寸(更保守的参数)
                if scale is not None:
                    clip = clip.resize(scale)
                
                # 限制GIF时长,避免文件过大
                if clip.duration > 10:  # 如果视频超过10秒,只取前10秒
                    clip = clip.subclip(0, 10)
                
                # 使用更稳定的GIF输出参数
                clip.write_gif(
                    output_path,
                    fps=min(fps, 8),  # 限制最大帧率
                    program='ffmpeg',
                    verbose=False,
                    logger=None
                )
                
                # 检查输出文件
                if os.path.exists(output_path) and os.path.getsize(output_path) > 0:
                    print(f"✓ 转换成功: {os.path.basename(output_path)}")
                else:
                    print(f"✗ 转换失败: 输出文件为空")
                    
            except Exception as e:
                print(f"✗ 转换 {filename} 时出错: {str(e)}")
            finally:
                if 'clip' in locals():
                    clip.close()

# 测试版本 - 更保守的参数
if __name__ == "__main__":
    path = r'D:\test\20桌面素材\20250928乐乐画作\1'
    
    # 首先检查文件夹是否存在
    if not os.path.exists(path):
        print(f"错误: 路径不存在 - {path}")
    else:
        print(f"找到文件夹,包含文件: {os.listdir(path)}")
    
    convert_mp4_to_gif(
        input_folder=path,
        scale=0.3,    # 更小的缩放比例
        fps=5,        # 更低的帧率
        colors=64     # 更少的颜色
    )

国庆节最后一天请小作者看绘画作品动态化的效果,乐乐好惊讶地看着,问:"这是怎么做的呀"

"用图片转视频做的,是电脑让它动起来的。"我又问,"你画的是三个小朋友跳舞吗"

"不是"她摇摇头,

"那他们在干什么?"

"不知道"

"哦,你是随便画的"

她点点头。

用豆包分析,幼儿绘画水平和绘画需求

豆包的分析是

从绘画水平来看,38 月龄的小班幼儿处于涂鸦后期向象征期过渡的阶段。画面中的人物造型较为简单,用基本的圆形、线条来勾勒头部、身体和四肢,细节表现较少,比如人物的五官、肢体动作都比较简略,这符合该年龄段幼儿手部精细动作发展还不完善,对事物形态的描绘能力有限的特点。

从绘画心理来讲,幼儿此时的绘画更多是一种无意识的创作,带有游戏性和随意性。她自己也表示是 "随便画的",没有赋予画面明确的情节或主题,只是凭借直觉和当下的感受去涂抹线条、塑造形象,享受绘画过程本身带来的乐趣,而非刻意去表现某个具体的内容,这体现了幼儿绘画的自发性和愉悦性。

相关推荐
AngelPP11 小时前
OpenClaw 架构深度解析:如何把 AI 助手搬到你的个人设备上
人工智能
宅小年11 小时前
Claude Code 换成了Kimi K2.5后,我再也回不去了
人工智能·ai编程·claude
九狼11 小时前
Flutter URL Scheme 跨平台跳转
人工智能·flutter·github
ZFSS11 小时前
Kimi Chat Completion API 申请及使用
前端·人工智能
天翼云开发者社区12 小时前
春节复工福利就位!天翼云息壤2500万Tokens免费送,全品类大模型一键畅玩!
人工智能·算力服务·息壤
知识浅谈12 小时前
教你如何用 Gemini 将课本图片一键转为精美 PPT
人工智能
Ray Liang13 小时前
被低估的量化版模型,小身材也能干大事
人工智能·ai·ai助手·mindx
shengjk114 小时前
NanoClaw 深度剖析:一个"AI 原生"架构的个人助手是如何运转的?
人工智能
西门老铁16 小时前
🦞OpenClaw 让 MacMini 脱销了,而我拿出了6年陈的安卓机
人工智能