AI让儿童绘画动起来-程序员带娃必备

news/2024/7/5 2:15:00

项目效果演示

0f8b7083e4e523667dc082f36c443143.jpeg

项目描述

很多小朋友在学习绘画的过程中,创作出来很多比较有创意的作品,那么怎么让这些作品,动起来,甚至是和拍摄的视频进行互动呢,今天分享的这个项目,能够完美解决这个问题。


项目地址
http: //www.fairanimateddrawings.com
github:https://github.com/facebookresearch/AnimatedDrawings


安装环境
该项目已在 macOS Ventura 13.2.1 和 Ubuntu 18.04 上进行了测试。如果您在其他操作系统上安装,则可能会遇到问题。
我们强烈建议在安装 Animated Drawings 之前激活 Python 虚拟环境。Conda 的 Miniconda 是一个不错的选择。


安装步骤
# create and activate the virtual environment
conda create --name animated_drawings python=3.8.13
conda activate animated_drawings

# clone AnimatedDrawings and use pip to install
git clone https://github.com/facebookresearch/AnimatedDrawings.git
cd AnimatedDrawings
pip install -e .
现在一切都已设置完毕,让我们为一些绘图制作动画吧!首先,请按照下列步骤操作:
打开终端并激活animated_drawings conda环境:
~ % conda activate animated_drawings
确保您位于 AnimatedDrawings 的根目录中:
(animated_drawings) ~ % cd {location of AnimatedDrawings on your computer}
启动Python解释器:
(animated_drawings) AnimatedDrawings % python
将以下两行复制并粘贴到解释器中:
from animated_drawings import render
render.start('./examples/config/mvc/interactive_window_example.yaml')
如果一切都安装正确,屏幕上应该会出现一个交互式窗口。(使用空格键暂停/取消暂停场景,使用箭头键及时前后移动,使用 q 关闭屏幕。)

831ae314218ea937e3b771316d573586.jpeg

这里的幕后发生了很多事情。角色、动作、场景等都由配置文件控制,例如
interactive_window_example.yaml. 下面,我们展示如何通过改变配置文件来实现不同的效果。您可以在此处了解有关配置文件的更多信息。


导出 MP4 视频
假设您想将动画保存为视频文件,而不是直接在窗口中查看。通过将这些行复制到 Python 解释器中来指定不同的示例配置:
from animated_drawings import render
render.start('./examples/config/mvc/export_mp4_example.yaml')
动画不是保存在交互式窗口中,而是保存到文件 video.mp4 中,该文件位于与脚本相同的目录中。

导出透明.gif

也许您想要透明的 .gif 而不是 .mp4?在 Python 解释器中复制这些行:
from animated_drawings import render
render.start('./examples/config/mvc/export_gif_example.yaml')


无头渲染
如果您想无头生成视频(例如在通过 ssh 访问的远程服务器上),则需要USE_MESA: True在view配置文件的 部分中指定。
view:
USE_MESA: True
将多个角色添加到场景中

42b1c70164fc6965f151e83e14f66106.jpeg

通过在配置场景的“ANIMATED_CHARACTERS”列表中指定多个条目,可以将多个角色添加到视频中。要亲自查看,请从 AnimatedDrawings 根目录中的 Python 解释器运行以下命令:

from animated_drawings import render
render.start('./examples/config/mvc/multiple_characters_example.yaml')
添加背景图片
假设您想向动画添加背景。您可以通过在配置中指定图像路径来完成此操作。从 AnimatedDrawings 根目录中的 Python 解释器运行以下命令:

74684ee8efe2d422f65a7738b567dbce.jpeg

from animated_drawings import render
render.start('./examples/config/mvc/background_example.yaml')
感兴趣的小伙伴们,抓紧行动起来吧。


http://lihuaxi.xjx100.cn/news/1471514.html

相关文章

浅入深出充分理解-->(fork())父子进程

目录 进程是如何被管理的 Linux下的进程是如何被管理的 fork()父子进程的创建 1:为什么fork返回给父进程子进程的id,给子进程返回0 2:一个函数是如何做到返回两次的 3:一个变量怎么会有不同内容 在某一个时刻,我正在用电脑打…

网站建设与运营的成功策略:从规划到实施

导言: 在当今数字化时代,一个优质的网站不仅是企业形象的窗口,也是与客户互动、传递信息的重要渠道。本文将介绍一套成功的网站建设与运营策略,从规划阶段到实施和持续优化,助您在激烈的在线竞争中脱颖而出。 一、网站…

什么是脚本语言

目前程序执行方式有两种:二进制方式、脚本方式。 二进制方式: 是先将我们编写的程序进行编译,变成机器可识别的指令代码(如.exe文件),然后再执行。这种编译好的程序我们只能执行、使用,却看不到…

简单计算器的实现(含转移表实现)

文章目录 计算器的一般实现使⽤函数指针数组的实现&#xff08;转移表&#xff09; 计算器的一般实现 通过函数的调用&#xff0c;实现加减乘除 # define _CRT_SECURE_NO_WARNINGS#include<stdio.h>int Add(int x, int y) {return x y; }int Sub(int x, int y) {retur…

设计模式(8)外观模式

一、 1、使用背景&#xff1a;降低访问复杂系统的内部子系统时的复杂度&#xff0c;简化客户端之间的接口。 2、定义&#xff1a; 为子系统中的一组接口定义一个一致的界面&#xff0c;此模式定义了一个高层接口&#xff0c;这个接口使得这一子系统更加容易使用。完美地体现…

2024届校招:校招必须知道的三件事

校招提前知 提到校招&#xff0c;不少同学受到“金九银十”的影响&#xff0c;认为九、十月份是进行校招的时间段。但实际上&#xff0c;校招的时间越来越提前&#xff0c;上周陆续有央企、国企开启了24届提前批的招聘&#xff0c;打响了24届校招的第一枪。今天给大家整理了校…

mysql 8.0 窗口函数 之 分布函数 与 sql server (2017以后支持) 分布函数 一样

mysql 分布函数 percent_rank&#xff08;&#xff09; &#xff1a;等级值 百分比cume_dist() &#xff1a;累积分布值 percent_rank&#xff08;&#xff09; 计算方式 (rank-1)/(rows-1)&#xff0c; 其中 rank 的值为使用RANK()函数产生的序号&#xff0c;rows 的值为当前…

WMCTF-2023-Crypto

文章目录 signin题目描述&#xff1a;题目分析&#xff1a;HNP知识导入 bad_prime题目描述&#xff1a;题目分析&#xff1a; welcome_signer2welcome_signer1 只会简单的&#xff0c;后两题不会 signin 题目描述&#xff1a; from Crypto.Util.number import * from random …