type
status
date
slug
summary
tags
category
password
icon
这都是你学数媒应得的
一.数字音频
1.了解声音
- 物理学上,声音又称为声波,始于空气的振动,是一种波动的能量。
- 一般用频率、振幅和波形三个基本特性来描述:
- 频率是指单位时间内的振动次数,单位为赫兹(HZ,周期/秒)
- 振幅是指发声物体在振动时偏离中心位置的幅度。
- 波形,声波的形状。由大量不同频率、振幅、相位的波叠加的结果。
- 频率是声音(波)的重要特性,频率越高,声音越尖锐
- 生理上,人耳可听频率范围是20Hz-20KHz
- 人类按照自身可听频率范围,将声音分为正常声、超声、次声
- 不同的生物,可以发出和听到的声音的频率范围不同。例如,海豚音,蝙蝠的超声波定位
- 生理学声音:声波作用于听觉器官所引起的主观感觉。一般用响度、音调、音色等特征描述。
- 声音的物理与生理特性存在直观的联系
- 频率影响音调:频率低,音调低沉;频率高 ,音调尖锐;改变频率,男声->女生
- 振幅影响响度:振幅越大,声音越响亮;音量调节
- 波形影响音色:波形越杂乱,音色越嘈杂;滤波,声音降噪
2.声音的数字化表示
1.模拟声音信号数字化
- 声音数字化一般经过三个阶段“采样、量化、编码”
- 采样:将(麦克风转化的)模拟信号以某一频率进行离散化样本采集
- 量化:将采集到的样本电压或电流值进行等级量化(打分)处理
- 编码:将分值变换成对应的二进制表示的规范

2.采样频率
- 数字化的过程存在误差,减少误差的手段:
- 提升采样频率、量化精度(并未越高越好,成本和精度达到平衡,满足人的生理即可)
- Nyquist(奈奎斯特)定理:在进行模拟/数字 (A/D)信号的转换时,如果采样频率为信号中最高频率2倍,则采样后的数字信号完整地保留原始信号中的信息。
- 实际应用中,采样频率为信号最高频率的2.6~4倍
- 基于奈奎斯特定理:
- 人的听力范围:20-20k
- CD音质:20k*2 → 44.1k
- 工业音质:48k,采样率略高于CD
3.量化方法
- 声音量化的选择一般是8位(bit,b,比特),16b,24b很罕见
- Q:为什么不是3b,7b之类的量化呢?而是选择8比特? A:数据对齐,以字节为单位对齐数据,即使人的年龄很难超过100岁,通常依然用8b甚至4字节记录年龄,而不使用7b
Q:32b量化可以更精确的区分响度,为什么不使用呢?
A:大多数情况下,数字化声音是给人类使用的,人的生理决定了不需要超过16b的量化区分
Q:为什么是8b,16b计量,不用1B,2B计量?
A:习惯,音频流、视频流、数据流衡量的单位kbps,千位/秒,带宽
- 采样频率 * 样本精度(量化) * 采样声道 → 数据率/流码率 ;单位kbps, kb/s;
- 数据率/流码率 越大,数字化的音质越好。

4.编码格式与压缩
- 大多数的声音文件存储采样、压缩的波形数据:
- 有损压缩可以损失源文件数据(删除人耳听力范围之外、甚至是听力范围内的信息)以换取小体积文件。压缩比1:10~20(码率128~320)常见格式(压缩编码方式)包括mp3、wma,aac
- 无损压缩,只改变源文件数据记录方式,使其体积变小,可恢复。通常压缩比1:2。常见格式ape、flac、 wav(微软)
- SACD格式(SuperAudio CD,超声频CD):Sony公司发布,采样率2.8224MHz(CD的64倍),24位量化,声音的细节表现丰富、清晰,采用无损压缩。贵(CD设备贵、唱片贵)
5.特殊音乐格式MIDI
- MIDI(Musical Instrument Digital Interface)是一种标准(1983年),是一种描述乐曲的演奏方式的“音乐语言”;
- MIDI三要素:
- 波表
- MIDI文件,乐谱
- MIDI播放器
- 对各种真实乐器所能发出的所有声音(包括音域、声调)进行数字化采集,存储为波表文件WaveTable

- MIDI播放器,根据MIDI文件记录的乐曲信息向波表发出指令,从“表格”中逐一找出对应的声音信息,经过合成、加工后回放出来。
- MIDI优缺点:
- 优点
- 计算机能理解的乐谱,适合制作背景音乐BGM
- MIDI文件存储的是指令,而非采样波形。容量小,一首歌的配乐约几十K。
- 缺点
- 廉价的伴奏。音色缺乏变化、电子合成音缺乏灵魂:强弱、连贯。
- 难以(无法)用来表现丰富多变的人声和自然界中的声音。
3.数字音频处理技术
1.音频编辑核心概念
- 在音乐创作领域,通常按照声音来源划分为人声、乐音和响音
- 人声:人类发出的声音,例如:独白、对白、旁白、歌声、啼笑,感叹等;
- 乐音:也可称为音乐,指通过相关乐器演奏出来的声音;
- 响音:除二者之外的其他声源产生的声音,动物声音,自然界电闪雷鸣,物体的摩擦、碰撞
- 音轨(Sound Track)音频处理软件的时序声波信息,对应于音乐创作中的一个声部或者一种乐器,或者一种语言版本,每个音轨可视化为一条时间“轨道”
- 声道(Sound Channel) 是指声音在录制或播放时,在不同空间位置采集或回放的相互独立的音频信号,对应于声音录制时的音源数量或回放时相应的扬声器数量
2.常用操作
- 常用操作:声音剪辑,声音合成,调节音频质量,通过均衡器增加音效
- 音乐制作六部曲:
- 1作曲、2编曲、3录音、4编辑、5混音、6 母带
4.数字音频应用开发
1.音频应用场景
- 声场分析,扬声器定位等声音设备的基础算法优化;
- 数字化声音分析、处理算法:听歌识曲;Any2Any变声转换;
- 语言识别,合成。语音理解与语音文本;基于文本的语音朗读;
- 情感分析与标记;自动谱曲;
- 游戏、影视应用中基于物理的动态(在线)音频渲染,而非(离线)后期合成;
- 工业、军事、医学、气象等领域广泛应用超声波、次声波
- 超声波倒车雷达
- 优点,范围广、不受大雾、光线等影响;
- 缺点:(声波传播)速度慢
- 超声波碎结石,B超,生物仿生学
- 次声波探测大气成分
2.基于物理的三维音效
- 人耳的三维听觉特性:分辨声音的方位
- 根据虚拟场景中的音源、场景、角色及运动轨迹,基于物理模型计算声音的传播、吸收;
- 三维音效播放:耳机,杜比环绕声
- 耳机,通过双耳信号间的时间差、声级差来判断水平横向定位;依据声波的耳廓绕射效应判断出纵向定位;根据声级大小、频谱等因素来判断深度定位(与立体视觉类似…)
- 利用头部相关数据传输函数HRTF(Head-Related Transfer Function),模拟声音传播到双耳间的差异,从而模拟出声音的位置。
- 杜比全景声(Dolby Atmos)支持128个声音对象,64个声道,基于扬声器数量及定位,将音频流分解到对应的扬声器中,仿真移动声效和精准定位。
- 扬声器定位:7.1.4的声道分配,左、中、右、左右侧环绕、左右后环绕、左右前顶置、左右后顶置、超重低音共12个声道.
3.Maybe-基于语义的创作
- 语音情感特征提取及其降维方法综述
- 喜悦、悲伤、沉闷、压抑、丰满、空灵

4.数字音频信号分析
1.数字音频
- 理解数字音频
- 波形(时域)图
- 时域图:横轴,时间;纵轴,振幅,单位( dB或者规范化的(-1,1)区间)
- 可视化比较直观:某个时间幅度越大,响度越大;
- 不利于进行语义分析以及编辑:多个不同频率的波混合而成,我们需要按照频率分解
- 频谱(语谱)图

2.时域图生成频谱图
- 声波具有频域特性(多个不同频率的波混合而成),频域图有利于提取音频的特征。

- 傅里叶变换

- 数字音频信号分析中,将语谱图经过不同的数学映射,可以提取不同的语音特征,分别应用于节拍、变调、高低音频分离(人声/乐器),语音识别等不同领域

二.数字图像技术
1.数字图像基础-概念
1.基本属性
- 数字图像基础-概念
- 基础属性
- 颜色空间
- 存储与编码
- 图像与图形
- 广义上,图像(Image)是所有具有视觉效果的画面,它包括:纸介质上的、底片或照片上的、电视、投影仪或计算机屏幕上的;
- 数字图像(Digital Image):二维数组(矩阵)表示形式,便于计算机处理的图像;数组中的每个元素对应一个像素,数组下标对应像素坐标,元素数值描述像素亮度或颜色
- 数字图像的基本属性包括:
- 像素(Pixel)-图像上的一个点,具有整数坐标,亮度值
- 颜色深度-用多少位表示每像素的颜色亮度 – 1 bit(0/1),黑白图(二值图) – 4 bits(16种量级),8 bits(256种量级) – 16bits, 24bits, 32bits
- 分辨率(Resolution)-图像点阵的行列数
- 显示器常见分辨率包括:
- 标清(SD, Standard Definition ),480 线
- 高清(HD, High Definition ),720线 1280列 * 720行
- 全高清Full HD,1920*1080
- QHD, 2K,2560×1440
- Ultra HD, 4K,3840*2160;
- 8K,民用:巨大的代价,微小的收益

- 精度(DPI,Dots Per Inch)像素个数/英寸
- 喷绘(10-50),报纸(125-170)
- 杂志、写真720。
- 手机屏幕用PPI综合指标,与DPI不同,PPI同时考虑水平、竖直方向间距。
- 手机视网膜屏幕:精度超过人眼识别极限的屏幕(多数人眼实际分辨能力450ppi)
2.颜色空间(颜色模型)
- 颜色是一种对光的视觉感受。涉及到物理、材料、生物、心理等多种学科,同时也是人的大脑对物体的一种主观感觉。
- 相同的颜色在不同人眼中感受不同
- 显示器、投影、印刷品呈现的颜色视觉感受也不同
- 因而:不同应用领域通常需要不同的颜色空间
- 因而:需要经常需要在颜色空间之间进行转换
- 例如,颜色的补偿、矫正等
- 典型的颜色空间
- RGB-显示设备
- CMYK-打印机
- HSB/HSV-人类主观认知
- YIQ/YUV-视频信号
- CIE(国际照明协会)-色度图
颜色空间(颜色模型)-RGB
- RGB(Red、Green、Blue)显示器采用的颜色模型。
- RGB颜色空间对应三维直角坐标系中单位长度的立方体:
- 其中黑(0,0,0)为原点,红(1,0,0),绿(0,1,0),蓝(0,0,1)三个分别对应坐标轴,白色的坐标为(1,1,1),灰(x,x,x)三个分量近似
- 颜色可以叠加,例如,红(1,0,0)+绿(0,1,0)= 黄( 1,1,0 )
- 计算机中的RGB不能表示所有的颜色,为什么?
- 只能表示用RGB叠加的颜色,不能表示人能感受到的所有颜色。
- RGB的亮度等级也不是无穷的,实践中,通常使用1个字节(8bits)表示一个R/G/B分量亮度值
- 人的生理原因,目前的8bit量级已经满足大多数应用需求,可以表示2^24或者2^32种颜色,差异细微到人难以分辨
- 设备原因,支持的颜色种类越多,设备越昂贵;例如,10bits颜色深度手机屏幕,被称为高动态范围,放在广告语中,称为高端的象征
- 当每像素用16位或以上量化时,通常使用真彩色:像素值即颜色值。
- 少于16位时,例如8位,使用伪彩色:选择若干颜色加入调色板,像素值为调色板中的编号/索引,根据编号/索引在调色板获取实际颜色值.
- 灰度图像:每个像素仅包含一个强度/亮度分量
- 二值图像:每个像素仅包含一个0/1描述的强度/亮度分量,可以表示黑/白、黑/绿等不同的组合
颜色空间-CMYK
- CMYK模型以纸上油墨的光线吸收特性为基础。
- 当白光照射到油墨上时,色谱中的一部分被吸收,而另一部分被反射回眼睛。
- CMYK三种基本颜色
- 青色(Cyan)、品红(Magenta)和黄色(Yellow)。
- 理论上CMY可以合成黑色,为什么需要K:
- 1、打印油墨包含杂质,利用黑色 (K) 油墨才能生成真正的黑色
- 2、实际应用中,彩色打印机也经常打印灰度图

- 利用人眼的空间集成特性,组合色块的大小以及形状,二值图像也可以表示灰度效果,称为半色调(Halftone)
- 广泛应用于打印机,还见于色盲测试卡片、马赛克格子画。创意软件:输入一些照片,自动摆放成浪漫的图案。

颜色空间-HSB
- HSB(HSV) 模型建立在人类对颜色的感知基础上。H表示色调(也称色相)、S表示饱和度、 B表示亮度。
- 色调反映颜色/色彩的种类,如红色、橙色或绿色。
- 饱和度是指颜色的深浅程度或纯度,即各种颜色混入白色的程度,饱和度越高则颜色越鲜艳/越纯。
- 亮度是颜色的相对明暗程度。
- HSB模型是面向人的,反映了一种调色的过程。
- vs RGB、CMY是面向硬件设备的。
3.存储与编码
- 众多压缩格式,源于众多应用场景
- 压缩方法:有损jpg、无损png
- 是否支持透明
- 是否支持调色板
- 支持的颜色的种类:灰度、256色、16位,24,32,48
- 是否支持高动态范围(HDR)
- 是否支持动图(GIF)
- 是否支持自定义标签(版权、加密、坐标系、比例尺、经纬度、长度单位及角度单位)
- 是否支持图层
- 是否保存创作过程
- 是否是公开标准,软硬件支持程度,涉及专利、版权
2.数字图像软件-制作
1.基本概念
- 图层(Layer):相对独立的图像单元,每层可以独立编辑,不影响到其他的图层信息。 各层之间按不同的前后顺序和透明度混合(Blend)在一起。
- PS通道(Channel),RGB颜色通道和Alpha(透明度)通道,通过单独编辑一个或多个通道的亮度,调整色调。
- 调成紫色调,提亮红通道与蓝通道;
- 调成绿色调,将红蓝RB通道变暗,以凸显绿G通道。
- 选择区(Selecting area):在当前图层上定义一个编辑区域,编辑操作仅对选择区域内的数据有效,而区域外的数据将不会受到影响。
- 选择区可以用于创建蒙版,扣图
- 矩形选择区,手工编辑选择区,智能+手工编辑选择区
- 路径(Paths)可以是一个点、一条直线、一条曲线,或一系列连续直线和曲线段的组合。
- 路径提供精确定义选择区的方式
- 路径也可以用作轮廓、图案、排列、布局
- 蒙版(Mask)是浮在图层之上的一块挡板,对图层的部分数据起遮挡作用,只对未遮挡的区域操作 (蒙版与位运算) 。
- 滤镜(Filter),对图像进行滤波处理,实现艺术效果(第三方滤镜)
- 模糊(Blur),使边缘过于清晰或对比过于强烈的区域变得模糊柔和
- 笔触(Brush Strokes),模拟各种画笔处理的效果
- 扭曲变形(Distort),模拟各种不同的扭曲效果
- 噪化(Noise),产生粗糙的纹理效果
- 块化(Pixelate),产生分块平面化的效果。
- 图像(Image) vs 图形(Graph)→ 数字图像处理 vs (三维)计算机图形学
- 图形:矢量图,是指包含点、线、面等信息的几何元素以及几何元素的装配
- 元素:三角形、四边形、圆、抛物线
- 装配关系: 坐标,拓扑,约束关系(距离、平行、垂直、相交,对齐)
- 图像:
- 容易获取:相机,扫描仪,光栅化(计算图形在图像点阵中的覆盖区域)
- 一切皆像素,容易保存,表述简单
- 是视频的基础
- 缺乏(几何)信息,缺乏灵魂
- 图形:
- 揭示了物体的几何属性,可以进行数学建模、变换
- 表示图案、向量、位置、坐标等信息
- 更清晰的展示语义
- 是动画的基础
- 缺乏复杂光影的表示能力,转变成光栅显示
- 表示复杂(直线、曲线、坐标)

3.数字图像/图形开发
- OpenCV 是一个开源的计算机视觉和机器学习库,包含上万优化过算法。可以通过api使用,或者直接学习,优化其中算法
灰度、颜色属性的变换
利用色图映射公式实现颜色滤镜
(局部)变形
- 应用:瘦脸、瘦腿,FunnyMirror(哈哈镜),畸变矫正
- 本质:空间坐标映射
傅里叶变换
- 傅里叶变换:任何(周期)函数(信号),都可以看作是不同频率,不同振幅,不同相位正弦波的叠加。
- 横轴纵轴刻度对应频率,中心0刻度(DC),边缘高频,每个频率对应一个点,亮度表示该频率的振幅(能量)
- OpenCV实现:
- 傅里叶变换用于图像压缩:
- 一个在空域中看起来占满全空间的信号,从频域中看起来很可能只不过占用了极小一块区域,而大部分频率是被浪费了的。
- 一个看起来信息量很大的信号,其实可以只用少得多的数据来加以描述
- 傅里叶变换是JPG,MP3数据压缩的基础
- 在频率域上滤波,可以:
- 图像模糊或平滑-去掉高频部分,称为低通滤波
- 图像锐化或提取轮廓,去掉低频部分,高通滤波
- 去噪,噪声往往集中在某频率上,去掉该频率的波
- 利用缩放,平移,旋转的频率不变性,进行物体识别
- 卷积直观理解:源图1个点附近的(9个)像素值分别乘卷积核(权重),结果累加,(通常再除以9),得到目标点像素值数值
- 卷积的作用:提取图像特征,识别图像

图像处理其他应用
- 多摄像头图像处理:广角、长焦、红外、景深
- 太空探索,遥感应用:
- 地形、建筑、街道
- 生物医学工程:CT(分割)
- 工业应用:
- 视觉检验
- 零部件选取
- 过程控制
- 军事应用
图形与可视化两例
1.三维散点图

2.柱状图

三.数字视频技术
1.视频基本知识
1.视频原理
- 人眼能够把看到的影像在视网膜保留一段时间,称为视觉暂留
- 利用视觉暂留特性,播放器以每秒钟…的帧率连续播放影像,在人脑中形成连续的影像
2.从模拟视频到数字视频
- 最早的摄像机、电视机(荧光屏)、视频存储设备、传播设备等都是模拟的;
- 缺点:
- 不适宜长期存放,不适宜多次复制。随着时间的推移,录像带上的图像信号强度会逐渐衰减,造成图像质量下降、色彩失真等;
- 不适宜编辑、压缩、数字信号处理。
- 不适宜长距离传输,模拟信号传输方式会产生噪声,长距离传输过程中放大器的积累;
- 随着技术的发展,模拟视频逐渐被数字视频取代
- 数字视频将模拟信号采样、量化和编码,转换成数字信号,进行存储、处理和传输,其优点包括:
- 抗干扰:由二进制数字描述的信号,存储以及传播过程不容易出错
- 可编辑:可以在数字空间进行运算,支持非线性编辑;
- 可压缩:mpeg,h264等压缩技术,使得视频信号数据量更小,方便传播与存储
3.视频信号-YUV
- 彩色视频信号采用YUV、YCbCr或者YIQ颜色模型。
- Y表示亮度,(U、V)(CbCr)(IQ)是构成彩色的两个分量
- 为什么不用RGB颜色模型?
- 人眼对亮度信号比色度(颜色)信号更加敏感,有限的带宽,更多的分配给敏感的亮度信号Y(如何做到)
- 方便黑白电视接收彩色电视信号,只使用信号中的Y分量
- 使用亚采样技术,对Y分量用更多的位数采样,眼睛对亮度变化更敏感
- 常见采样格式包括4:4:4,4:2:2,4:1:1,4:2:0等
- Y:U:V=4:4:4 每一个Y对应一个UV,12字节变12字节
- Y:U:V=4:2:2 每两个Y共用一个UV;12字节变8字节
- Y:U:V=4:1:1 每四个Y共用一个UV;12字节变6字节
4.数字视频属性
- 视频分辨率:标清(480线)、高清(720线)、2K(1080线)、4K、8K
- 颜色深度:每帧可以显示的颜色数,24位颜色
- 帧率:每秒播放的帧数
- 例子,视频的常用制式:
- PAL:中国、欧洲电视信号制式,25帧, 720*576,4:3,24位颜色
- NTSC:美国、日本电视信号制式,30帧,720*486,4:3,24位颜色
- VCD: 352 * 240(NTSC)或352 * 288(PAL),MPEG-1标准压缩,宽高比通常4:3
- DVD:720 * 480,MPEG-2标准压缩,宽高比4:3或者16:9
- 码率(比特率):kbps即千位每秒,码率越大,越清晰
- 码率的计算: (分辨率 * 颜色深度) * 帧率
5.视频编解码
- 利益巨大(编解码芯片、传输),充满竞争与合作,常用压缩标准:
- ISO/IEC动态图像专家组:Mpeg, Mpeg 2, Mpeg 4,
- ITU-T视频编码专家组:H26x:H263, H264(高清视频普遍采用), H265(未来)
- 我国,数字音视频编解码技术(AVS):
- AVS一代标准实现了全国地面数字电视覆盖;
- AVS2高清视频编码方面性能优于最新国际标准,在监控视频编码方面完全领先于国际标准,中央电视台2018年10月开通AVS2超高清频道;
- AVS3面向8K及5G产业应用,逐步投入产业应用。
- 衡量编码方法的依据包括:
- 高质量:能提供连续、流畅的高质量图像。
- 低码率(Low Bit Rate):在同等图像质量下,压缩后的数据量更少。H264(标清<2Mbps)只有MPEG2的1/8,MPEG4的1/3。
- 网络适应性强:在不同网络上传输(例如互联网,CDMA,GPRS),应对不稳定网络环境下的丢包等问题。
- 解码复杂度,高的压缩比需要更复杂的解压算法
- 压缩编码的基本策略,视频数据存在大量帧内、帧间的冗余
- 第一代:基于数据统计方法,去掉数据冗余,称为低层压缩编码方法
- 第二代:基于内容分析的方法,去掉内容冗余。
- 基于对象(Object-Based)方法称为中层压缩编码方法,
- 基于语义(Syntax-Based)方法称为高层压缩编码方法。
6.视频文件格式
- 一些常见的视频文件格式包括
- 微软视频 :wmv、asf、asx
- Real Player :rm、 rmvb
- MPEG视频 :mp4
- 手机视频 :3gp
- Apple视频 :mov、m4v
- 其他常见视频:avi、dat、mkv、flv、vob
- 文件格式越来越水,大都基于核心压缩技术进行了一定的封装,因而我们应该更关注其采用的压缩技术。
2.数字视频编辑技术
- 传统的电影作品编辑,以拍摄到的胶片为素材,用剪刀等工具进行剪断和粘贴,去掉无用的镜头。又称为线性编辑技术:对顺序(线性)存储的视频的编辑。
- 录像带/录音带的覆盖通常需要限制同样长度,删除、缩短、加长某一段等“剪辑” 要用到真实的剪刀。
- 数字视频编辑:对数字视频进行画面拼接和影视特效(画面美化、声音处理)制作。通常对应非线性编辑技术:对随机(非线性)存储的视频的编辑。
- 通过“虚拟的剪刀”插入、删除、编辑视频,任何片段都可以立即观看,随时任意修改,时间上、空间上自由组合。
- 存储介质:磁带vs磁盘 , 访问方式:顺序访问vs随机访问
1.利用视频讲故事
- 信息(故事)本质是网状的,不同维度、不同空间、不同时间发生的事情
- 镜头记录部分空间、时间片段发生的事
- 导演:通过镜头组装,一步步的诱导观众建立事实真相,复现剧情故事网络
镜头(电影的最小逻辑单位):
- 镜头包括:远景、全景、中景、近景、特写等5种,以表现不同的内容,实现不同的效果。
- 镜头还包括不同的拍摄角度(仰、俯、斜、远、近等)、运动(推、拉、摇、移、跟、甩、快、慢)、第一视角、第三视角等诸多方面。
蒙太奇(Montage)-镜头组合-把若干镜头按一定的顺序和手法连接起来
转场特效(Transition Effects):
- 实现蒙太奇句子间的转换,叙事段落的转换,实现蒙太奇句子间的视觉连续性,给人一种间歇感,休息、回味、切换到另一个情境。
- 典型的转场特效包括:
- 淡入淡出:上一段落最后一个镜头的画面逐渐隐去直至黑场,下一段落第一个镜头的画面逐渐显现直至正常的亮度。
- 定格:将画面运动主体突然变为静止状态。视觉冲击力,强调XXX,制造悬念,一般用于片尾或较大段落结尾
- 空镜头:只对自然景物或场面描写而不出现人物。苍松翠柏、高山大海。。。让观众在情绪发展到高潮之后回味情节和意境
2.视频剪辑之上-后期特效处理
- 影视后期又称为影视特效,在一个镜头中,将实际拍摄所得的素材、虚拟场景以及三维动画分层渲染效果、山崩地裂特效解算、以及声音文字等其他信息,在空间上,光照色彩上,时间上,融合在一起。
- 代表软件:Combustion、After Effects
- 合成前需要细致的设计,实拍场所,绿幕、替身,实际的辅助道具的设计;虚拟场景的设计,虚拟角色、物体与实际画面的交互,各种定位
- 合成过程中,实际处理前景和背景分离抠像,位置、遮挡、碰撞关系,光照、阴影的关系
3.实时视频处理应用
– OpenCV,友好,
– 提供大量Demo,并且一些看似复杂的功能,可以通过API快速实现。
– 面对工程应用问题,可以通过综合应用api,不断优化
– 一些算法研究问题,可以自己撰写实现,与已有的api实现进行对比
1.OpenCV Tutorials
- 基础逻辑:打开摄像头,设定编码格式,如果摄像头未关闭{读一帧、展示、写文件},释放摄像头、文件资源,关闭窗口
2.物体跟踪(根据颜色)
3.运动检测
- 原理:基于视频图像相减,实现(像素层面)运动检测工程应用问题:利用KNN运动背景分割进行车辆运动检测(csdn,知乎)标识道路,删除阴影,车辆框选
4.综述
- 视频理解,机器视觉:相比图像,视频多了一维时序信息。如何利用好视频中的时序信息是研究这类方法的关键
- 应用:智能监控、人机交互、视频序列理解、医疗健康
- 挑战问题:遮挡,动态背景,移动摄像头,视角和光照变化
四.计算机图形(Computer Graphics, CG)
1.图形学综述
1.什么是计算机图形学
- 计算机图形(Computer Graphics,CG):在计算机中以图形为核心的表示、计算、显示、交互技术。
2.图形学与图形应用
- 图形是连接现实世界与虚拟世界之间的桥梁,涉及众多应用领域、核心理论与技术。
- 计算机图形课程,关注的是3D场景(通用、基础)属性(properties),揭示了三维世界在计算机中的本质模样,包括:
- 几何(三维模型表示)
- 行为(数学变换)
- 外观(光照、材质与渲染)
- 实现(渲染流水线)
- 广义的图形(CG)面向应用领域。
- 物体(Subjects)层,人、物体、零件、建筑、景观,是对3D的语义描述。-支撑课程:Maya、角色造型、CAD软件
- 技术( Techniques )层包括:获取与建模(手工、扫描、捕捉、重建)、仿真与交互(人机交互)、理解与感知(人机交互、机器学习、渲染)。
- 最外层是图形的多个具体应用(虚拟现实、增强现实、游戏、三维打印)领域。
2.图形引擎
- 图形引擎分类-体系
- OpenGL/DirectX3D/Vulkan,图形核心引擎
- OGRE/OSG/Unreal,应用引擎:
- 渲染+资源组织与管理+交互
- 场景优化与高层API,屏蔽底层API
- OSGEarth-3D GIS/SkyLine,CAD可视化模块
- Unity/ Unreal :游戏、仿真引擎
- 三维交互引擎,物理,网络,人工智能
- 脱离或简化编程,机械设计、土木建筑、考古
- Maya、Houdini、Blender内容创作软件,而非可以开发应用的引擎
- 计算机动画、实时渲染课程:基于核心引擎,实现应用引擎的若干技术。研究层。

- OGRE - Object-Oriented Graphics Rendering Engine
- 资源管理(几何、纹理、材质)
- 场景优化(场景图、空间划分,加速结构)
- 碰撞检测、公告板与粒子系统
- 高级纹理(天空盒)
- 动画(动画文件加载,插值播放)
- 分布式渲染……
- 游戏引擎应用,虚拟现实,人机交互:Unity、Unreal
1.OpenGL/D3D功能
- 面向计算机图形学课程-从图形原理到应用
- 几何、行为、外观、实现
- Programmable Render Pipeline可编程渲染管线:
- 原理:Pipeline/流程
- 实验:可编程
- 以Shader-Vertex,Fragment shader为主
2.众多核心驱动
- OpenGL: Khronos Group主导,Window和Linux都可以到4.6版本(2017);
- OpenGL ES(移动版),最后的版本3.2(2019),大量的高级特性在3.0以上;
- 大量国外的手机只支持2.0版本,为了兼容不能用高级特性;
- 新的渲染API,更细致的硬件控制,CPU多核的应用,渲染之外的通用计算。旧王已死,新王当立,OpenGL老了,Vulkan/DirectX/Metal未来
- Vulkan:Khronos Group主导,windows、linux、mac都支持。苹果没有原生的支持。在android手机上的支持,是android设备上的未来。开发复杂,对于初学者不友好
- DirectX:微软支持,Nvidia也强烈支持,只能应用于Windows。
- Metal:苹果主导。只能在ios上开发高性能的渲染和GPU计算。
- WebGL:OpenGL Web版
3.位更寄:WebGL
- 基于浏览器的页面端3D应用具有广阔的市场。
- WebGL:通过OpenGL ES驱动GPU实现图形渲染,目前的主流的浏览器都支持
- 通过HTML+JavaScript实现Web交互式三维动画的制作,无需任何浏览器插件
- 很多Web 3D应用都是基于WebGL
- 但是,最新WebGL2基于OpenGL ES 3,就没有然后了
- WebGPU,浏览器上的渲染与并行计算引擎,底层基于Vulkan,DirectX,
- 据说比WebGL图形性能快3倍,并行计算性能快10倍
- 但是,目前还没有商业版浏览器支持(那不是白吹nb?)。
- WebGL学习:自己看ppt或者Google去吧.
3.计算机图形学
- 计算机图形学课程主要面向通用(基础)属性,讲述以下方面:
- 几何:三维模型表示
- 行为:变换,Vertex Shader
- 外观:光照、材质与渲染,Fragment Shader
- 实现:GPU及可编程流水线

1.三维几何模型表示
- 线框WireFrame
- 二维机械图纸(正视图,侧视图)
- 表面(Surface/Boundary based)
- 影视动漫、游戏、虚拟现实
- 实体(Solid/Cell based)
- 医学可视化,有限元分析,岩层分析
- 场:磁力、能量。信息可视化范畴
- 表面模型(以及表面模型之间的转换)
- B-Rep(Boundary Representation):
- 点、线、面(vertex edge face),网格
- CSG(Constructive Solid Geometry)
- 零部件
- 参数曲面表示:双曲面,马鞍面
- 引擎、机翼等表面

- B-Rep
- 图形学(OpenGL):三角形网格(Triangle Mesh)
- 首先,复杂表面可以离散化为三角形网格
- 然后,专注处理海量三角形的表示、编码、并行变换、绘制
- 显卡处理能力:三角面片处理数量
- CAD:拓扑+几何

- 编程语言如何描述三角形网格
- 方式一,顶点(Vertex)数组+几种连接方式
- 位置(x,y,z),纹理坐标,颜色,法向
- 方式二,顶点数组 + 索引数组方式
- Load obj。标准3D模型文件格式,是一种文本文件,可以直接用写字板打开进行查看和编辑修改。用于3D软件模型之间的互导,几乎所有知名的3D软件都支持OBJ文件的读写。
2.如何构建几何模型
- 1.app交互指定;2、捕捉测量;3、数学算法计算
- 基于软件作图指令或者所见即所得的交互建模:
- Maya、Blender交互建模,编辑修改
- 约束: 平行,垂直,相切。例如:画一个三角形的内切圆
- 特征(拉伸、扫掠、放样)+曲线+交互编辑
- 测量建模
- 三维扫描以及重建
- 图像建模:倾斜摄影
- 过程(规则产生式):
- 数学算法
- 分形:山、树等自相似的形状
- 粒子:爆炸、火焰、烟、喷泉
- bpy全称Blender Python API,使用python对Blender进行二次开发,(脚本)程序建模替代手工建模。
- 手动建模的每一个操作-对应一个建模指令(API)
- 手工建模 vs 脚本建模:所见即所得 vs 逻辑规则建模
3.空间变换
- 语义上,包括:平移(Translate)、放缩(Scale)、旋转(Rotate)、错切(Skew,shear)、投影(三维变二维) 等
- 每个变换对应一个变换矩阵,每个点对应一个向量:
- 将物体移动到另一个位置,即对物体上的每个点施加一个变换
- 新坐标 = 变换矩阵 * 原坐标
- 尝试在2D空间推导变换矩阵:
- 平移:
- 放缩:
- 旋转:
- 2D变换推广到3D空间,并统一写成 P’ = T * P的形式,连续变换对应矩阵乘法;
- 其中,P:点的3D坐标,列向量;T:44的线性变换矩阵; 矩阵乘法

相机内参
- 投影变换-三维物体投影到二维平面,分为平行投影与透视。
- 相机内参:Fov(field of view), 前后裁剪面,构成的视见体(标准小孔相机)实际相机还有焦距等

相机矩阵
- 最终位置 = 相机矩阵 * 物体空间变换矩阵 * 局部坐标系
- gl_Position = u_PvMatrix * u_ModelMatrix * a_Position;
4.广义的渲染&影视,游戏渲染
- 渲染:三维几何、矢量、材质信息的合成及二维呈现,辅助人类直观理解,快速决策。
- 应用于影视广告、动漫游戏、制造建筑CAD、地理信息、(医学、仿真)数据可视化等领域
- 整体目标-使用更短时间、更少资源,渲染更大规模的场景、更多类型的数据,得到更好结果
- 工程实践-不同行业应用,有不同的侧重:
- 影视广告:特效仿真,高逼真
- 游戏、虚拟现实:强实时,交互
- 动漫:风格化、卡通效果
- CAD:几何点线面、拓扑结构、矢量标注,透视
- GIS:影像、高程等多源、多分辨率数据
- 地质、医学:体渲染,科学可视化
- 影视游戏渲染:真实感渲染,通过计算光线的传播过程,将三维几何模型转化为高度真实感的图片。
5.光照与渲染

- 物体上一点的颜色,由光源、视点、物体自身决定,局部光照(直接光照)。
- 物体上一点的颜色,由光源、视点、物体自身及周边物体决定,全局光照。
- 质量(离线渲染,电影) vs 时间(实时渲染,游戏,预览)
基础理论
- 局部光照:只计算光源对当前物体的直接光照效果
- 优点:计算快,满足交互需求,适合游戏等交互应用。
- 缺点:由于不计算物体间的相互关系,无法在镜子前看到自己的身影,不支持半透明折射,面积光软阴影等效果
- 全局光照:计算光源及周围物体对当前物体的光照效果
- 优点:很好的表现物体与物体间的间接光照效果,高度真实,适合影视、动漫等非交互应用。
- 缺点:需要计算海量光线,计算慢(单帧需要几分钟、几小时,几天)
- 游戏等实时交互应用
- 基于光栅化的实时渲染引擎(OpenGL, OpenGL ES,WebGL,DX,Vulkan)
- 屏幕空间的全局光照(游戏编程)
- 用廉价的技术实现看的过去的效果
- 阴影,反射,环境遮挡,色溢
- RTX实时光线跟踪( 2018年8月,DXR )
- 光栅化与光线跟踪混合,下一代渲染技术。
- DX 12, Vulkan, Optix
- 全局光照依赖于基于物理的渲染方法,经典的方法包括:
- 光线跟踪(略过)
- 光路跟踪
- 光子映射(略过)
- 辐射度(略过)
6.光照与渲染-光路追踪
- 对屏幕上的一个像素,均匀或随机产生n条采样光线。
- 对于其中的每一条采样光线,产生一条到光源的光路
- 遇到镜面,向反射方向附近产生伸展光路
- 遇到半透明面,向折射方向附近伸展光路
- 遇到漫反射面,随机方向伸展光路
- 有限步遇不到光源,放弃该光路
- 累加光路上各点颜色,计算该采样光线颜色。
- 根据n个采样光线贡献值的大小进行最终像素颜色的计算。
- 为什么光路追踪耗时
- 场景规模、屏幕分辨率、发射光线条数、追踪深度
- 噪声问题:
- 基于机器学习的降噪,高效的光路采样方法,目前研究的热点;

7.光照与渲染-材质
- 材质描述物体在光照下呈现出的色泽、质感等外观属性,其本质是对入射光的反射,不同材质对光照的吸收、反射不同
- 物体的“千变万化”,不仅仅体现在几何形状上,更体现于材质

- 材质模型,如何根据根据入射光照计算反射(折射)光照
- 经验模型:环境光(Ambient)+漫反射(Diffuse)+高光(Specular)

- 随着计算与存储的发展,对“真实感”的追求开始由外形向质地发展。
- 汽车、手机、衣物、饰品等的质感成为展示其品味的重要因素
- 对于材质的研究与应用由经验建模阶段进入物理建模阶段;
- 对物体微观表面建模,仿真光线在物体表面或内部的反射、散射、吸收过程
微表面理论
- 微表面理论
- 物体表面由若干微表面(Microfacet)组成;
- 每个微表面是一个理想的镜面。
- 物体的光照反射分布是所有微表面综合作用的结果;
- 基于微表面理论的材质模型被称为物理材质模型
- 微表面在大多数情况下,其朝向整体符合某类概率分布(例如,高斯分布),因而可以推导一些解析表达式,计算高光分布
- 但如果不符合概率分布呢,于是延伸出很多有挑战性的问题

纹理
- 纹理: 又称贴图。利用映射技术,将图像贴到3D物体表面,提供真实感的表面信息
- 节省建模时间(拍照)
- 节省内存(图像替代精确几何模型)
- 本质是二维数组,除了颜色贴图,还可以存储法向、高度、光照等信息
- 还可应用于纹理烘焙,将复杂光照预渲染到纹理图像中,渲染时贴预渲染的结果,加速渲染,避免了交互应用中的重复计算
- 纹理映射-贴图:
- 映射:指定三维物体表面点(x,y,z)对应的纹理坐标(u,v) -UV贴图
- 可以自动计算(x,y,z,u,v)
- 但对于复杂物体,往往需要手工调整
- 采样(Sampler),纹理区域与贴图区域不匹配时,利用某类差值算法(策略)根据映射点计算任意点的纹理坐标
五.计算机动画(Computer Animation)
1.动画概述
- 动画:通过连续播放的一系列画面,以造成动态的视觉变化,展现事物的变化,是创建运动物体的艺术与技术
- 动画利用视觉暂留原理来“欺骗”观众的视觉,通过连续快速播放(一秒24或30帧)画面序列形成动感。
1.动画历史
自行看ppt吧,考这个大罗金仙也救不了
2.动画分类
- 传统动画(Traditional animation)
- 手绘动画(Cel Animation),手绘+计算机扫描、着色、合成
- 定格动画(Stop motion animation)
- 制作实物模型,逐帧摆拍对象,连续放映
- 计算机动画(Computer animation)
- 更多的运用于三维动画
2.二维动画-基于经验法则的设计,展示创意的魅力
- 迪士尼动画十二法则
1.挤压和拉伸SQUASH & STRETCH
- 人物或者对象在进行运动过程当中,发生拉扯与碰撞等互动性动作时出现的一种压扁和拉长的变形运动;拉伸挤压的过程中,保持物体体积不变。
- 典型实例:跳跃小球(bouncing ball)
- 体现速度变化:最高点附近间隔比较密,下落弹起过程间隔比较疏松 ;
- 体现物体弹性:在下落和弹起的中间阶段拉伸小球,接触地面的时候挤压小球。

- 挤压和拉伸是客观规律的体现
- 使物体富有弹性,对物体赋予生命。反之,如果要表现僵硬的物体,一定不使用挤压和拉伸(使用震动?)
- 沿运动方向进行拉伸可以增强速度感。
- 夸大带来比真实更真实的效果,在动画片里常见。

2.预示Anticipation
- 角色动作的准备动作。
- 生理上,肢体运动需要靠肌肉的收缩来完成,而肌肉要进行收缩的话必须先放松。
- 心理上,如果角色要做一个动作,应该在做动作之前给观众一个心理暗示或期待。“憋” 大招
- 如果动作快,则需要比较长时间的和比较大的预示效果。如果动作本身慢,则预示效果不需要太长太明显。
3.展示/登台Staging
- 源于话剧,操纵观众的注意力,引导观众的目光投向要注意的地方。实现方法:
- 运动vs静止:静止场景中的运动物体,运动场景中的静止物体;一个角色说话时,其他角色静止倾听。
- 轮廓:一个好的外形轮廓有利于展示;颜色:灰色空间中的一抹亮红;
- 其他:当一个新角色登台亮相之时,所有观众的目光都会集中到他身上。
4.关键帧动画POSE TO POSE
- 关键帧动画,设计好人物的几个关键的姿势,即关键帧(keyframe),然后再根据动作的快慢在关键帧之间加入一些中间帧。
- 关键帧方法是目前动画片制作的实际标准,有利于分工合作。有经验的动画师画关键帧,确定人物动作、姿势 ,新手(或计算机)填入中间帧。
- 非关键帧动画,从第一张开始,一张接一张,直到结束。动画师个人随着感觉走

5.跟进和重叠运动(FOLLOW THROUGH & OVERLAPPING)
- 任何动作都不可能戛然而止,一般都要有一个动作终止的过程。
- 当一个人物运动的时候,其身体各部分并不是同时、同步运动的。
- 人物的转身动作,先是腰部动,然后带动上肢,肩膀。腰部运动是主导,其他部分跟进。
- 角色身上的柔软宽松的部分或饰品,比如兔子的长耳朵、女孩的长头发、围巾等,启动慢,制动也慢。
6.慢进慢出(Slow in & Slow out)
- 关注中间帧的步距调节问题
- 在关键帧附近加入比较多的中间帧,在中间位置加入少量的中间帧
- 动画师花了极大的努力去刻画角色在一个个关键帧的姿势,希望让观众明确地注意到这些重要的姿势

7.弧线运动ARCS
- 由于骨骼的运动一般是基于关节的轴运动,动物的运动很少是机械的、沿直线的。
- 由于骨骼的运动一般是基于关节的轴运动,动物的运动很少是机械的、沿直线的。
- 在动画制作中,通常会先画出运动弧线,在弧线上标出关键帧的点做定位

8.辅助运动/小动作(SECONDARY ACTION)
- 一些辅助动作可以增强角色的表现力,暗示人物的个性和意图 。
- 悲伤的角色用手抹掉眼泪;受惊吓的角色扶扶眼镜稳定情绪;起床的时候先伸懒腰
- 辅助动作既要能够增加动画的生动感,又不能喧宾夺主,妨碍主体动作的表达。
9.时间控制(Timing)
- 在播放速度固定(每秒24帧)的情况下,通过控制在两个关键帧之间加入中间帧的数量,来表现速度
- 摇头动作:两张关键帧,一张头摆向右边,第二张头摆向左边。 加入关键帧:
- 没有中间帧:瞬移,头被平底锅击中
- 六张中间帧:目光追逐面前驶过的跑车
- 一百张中间帧:脖子落枕了,正在慢慢活动脖子
10.夸张EXAGGERATION
- 强化人物的动作和表情,从而把人物的心理和情感状态表达出来,让观众明白发生了什么和角色的反应。
- 相比于真实演员,动画角色往往细腻不够,夸张来凑
- 悲伤时,痛哭流涕,感天动地;
- 开心时,哈哈大笑,前仰后合;
- 被惊吓,眼睛凸出,头发倒竖;
- 被雷击,角色化成粉末;
11.立体感SOLID DRAWINGS
- 背景符合透视原理。
- 对运动的角色来说,各种角度的各种姿势需要体现他是一个有血有肉的三维角色,而不是二维的纸片。
12.吸引力APPEAL
- 相对比较笼统的法则:独特的造型设计,富于变化的表情,具有活力的动作,以及一切可以抓住观众目光的元素。例如,避免对称

3.三维动画-基于物理定律的仿真,视觉特效的享受
1.计算机动画分类
- Rigid motion刚体运动
- 物理引擎,牛顿运动定律、摩擦、碎裂、碰撞
- Deformation 形变体-弹簧,布料
- Character animation角色-动力学、反向动力学
- Particle animation粒子
- Camera motion相机跟踪-盘旋
2.软件
- 三维内容创作软件、平台:Houdini、Maya、3D Max、Blender(开源)
- modeling 、rendering、animation(Character modeling, rigging(绑定))
- 由于动画种类宽泛,所以创作平台依赖特定插件实现特定类型动画
- 同一类动画,支持的程度也差别很大,例如崩塌碎片的规模可能是几千,几万、几百万
- 3D角色动画:Poser、MotionBuilder
- 动作捕捉编辑和数据清理
- Retarget将动捕数据应用于另一个目标物
- 与Maya、3DSMax等软件的互操作
3.计算机动画创作方法
- 1.手工动画+关键帧
- 理论上,所有动画都是可以K帧与插值的
- 实际上,需要天赋、训练与技巧
- 2.物理动画Physics
- 对运动、摩擦、形变等的仿真,求解复杂方程组
- 例如利用弹簧-质量体系模仿鱼的运动
- PhysX,havok等物理引擎或插件
- 建模复杂,求解慢,不适合构建复杂运动-人的运动
- 3.运动捕捉Motion capture
- 实现技术:光学、电磁、机械
- 捕捉应用:动作捕捉、面部捕捉、手部捕捉
- 捕捉过程、重定向过程昂贵
- 4.混合动画建模
- 关键帧与物理混合
- 关键帧定义骨骼的运动,Rigging附着在骨骼上的蒙皮,衣物利用物理模型计算
- 动捕与物理混合
- 动捕处理角色踢球,物理模型计算球的飞行路线
物理动画
- 过程动画:编程控制位置、形状或者whatever,例如飞机盘旋
- 虚拟世界(系统)规则化,计算机编程实现这些规则
- 为虚拟世界设置初始数值/虚拟世界初始化
- 运行程序,根据用户的输入,选择运用规则,改变虚拟世界
- 粒子动画
- 生成大量粒子
- 仿真粒子运行轨迹(发射、运动、碰撞、消亡)
- 粒子与粒子之间,粒子与虚拟世界的物体之间相互作用
- 在粒子上附着图元(纹理),用于渲染/绘制
4.计算机动画的应用
- 影视特效(Movies, TV)
- 视频游戏Video Games
- Virtual Reality
- 仿真、训练、军事Simulation, Training, Military
- 医疗Medical
- 机器人Robotics
- 可视化Visualization
- 交流Communication
六.数字游戏技术
1.数字游戏的历史与分类
1.历史

2.分类

- 划分游戏类型的原因:
- 划分玩家群,锁定特定玩家群体
- 使得玩家更容易掌握新游戏
- 技术上的局限性(模版)

- 同类型的游戏具有类似的:
- 游戏规则(game mechanism)
- 视觉风格(visual style)
- 交互方式
2.游戏制作流程
1.游戏制作
- 策划(Vision):在现有条件、技术基础上规划、策划展现在玩家面前的情景
- 技术(Technology):三维图形,人工智能…
- 过程(Process):稳定性、设计周期、设计成本
2.游戏制作团队构成

3.游戏策划-需求分析
- 策划团队:vision – technology – process
- 撰写策划方案
- 根据当前和未来市场趋势、可用的人力资源、时间等要素定出大致方向,写成一份草案
- 游戏类型?游戏有哪些独特的亮点?采用什么视角?大致长度是多少?什么时候发售等等
- 送交上层审批,或者找投资方
- 组建制作团队,制定设计方案
- 草案获得通过后,组建制作团队
- 广泛分析各种类型相近的游戏,交流和讨论,制定详尽的游戏设计文档
- 包括故事大纲、剧本、角色、视角、武器道具、战斗、系统、关卡分布等
- 图配文字,详尽说明每一个部分的要求,给程序美工指明方向
4.游戏策划-整体策划方案
- 游戏的概述:开发游戏的原因、游戏类型、背景、操作方式、平台、玩家群体等内容
- 游戏世界和规则:游戏世界的构架(仙侠、魔幻、未来、现实)、组成元素(剑与魔法、热武器)、游戏基本规则(种族、职业、相生相克)
- 游戏系统整体介绍:通常包括游戏架构、程序引擎、任务体系、道具体系、人物角色设定、画面风格、场景地图、团队合作、角色AI描述、特色系统等众多方面。
- 开发预算,进度
- 市场预测
5.游戏开发流程-游戏制作

- 人员以及数目比例
- 管理人员8~10%
- 音乐人员<5%
- 程序人员15%~20%
- 策划人员10%~15%
- 美术人员60%~75%(中后期所占比例更大)
- 没有贵贱之分,只是工作性质不同
- 每个成功游戏的背后,都是一个和谐的大家庭一样的项目组
6.游戏开发流程-测试阶段-发布
- Alpha版(内部测试版)测试,它的标准仅是:所有功能完成,游戏能够打穿。也就是说,可能会死机,可能会花屏,游戏的关卡可能布局乱七八糟,界面可能只有几个选项,甚至游戏能够随意选关。
- Beta版测试,它的的标准是:游戏没有100%死机的bug,能够顺利运行;基本调整完毕,整体感觉到位,没有大的图形问题;各种界面都已经完成。
- Master版意味游戏全部完成,可以进入市场,同时项目基本结束。
- Master版游戏标准化:加上官方编号、版权信息等。经过标准化处理的文件随后就连同其他一些资料被提交给主管进行审批。
3.龙与地下城案例
自行看ppt吧家人们
4.游戏引擎技术
概述可在前面计算机图形学部分找到,关于图形引擎部分
1.OpenGL/ D3D功能
- Render Pipeline
- 顶点 三维空间变换以及装配
- 镶嵌细分
- 图元变换,点→线→面
- 投影变换(三维→二维)
- 纹理材质以及着色
2.三维场景的组织与管理
- 场景图:三维图形场景组织与管理的一种常用数据结构,以虚拟世界中心作为根节点,将场景中的几何、光源、相机等构成要素按照空间或者逻辑关系进行层次化组织。通过遍历场景图,可以定位场景中每个物体的空间、材质等属性。

空间划分
- 八叉树 Octree (quad-tree for 2D)

- K-D 树(k维树):

- BSP(Binary Space Partitioning)
- 给定视点vp以及BSP空间划分树,把所有的区域按照距 离vp由远到近的顺序排序(绘制)
几何优化
- 原始问题,如果减少场景中三角片规模,并尽量保持细节
- 层次细节技术(LOD-Level of Detail),简模、粗模

- 更深入的问题:动态简化,还原算法,
- 行业规范,(应用,视点距离,模型精度,模型类型)
3.快速可见性判断和消隐
- 物体层
- 二叉树、八叉树
- 入口(Portal)技术
- 潜在可见集
- 顶点层
- 背面剔除(Back-face culling,OpenGL支持)
- 视域剔除(View frustum culling)
- 遮挡剔除(Occlusion culling)
- 像素层
- 深度缓冲消隐
4.三维游戏中的碰撞检测
- 场景中的物体两两进行碰撞检测,复杂度O(n2),对于复杂游戏场景,不能满足需求。
- 碰撞检测与三维空间组织管理、可见性判断等问题非常类似,很多方法可以相互借用,关键是
- 快速剔除大量不会碰撞的情况,缩小可能碰撞物体的集合,减少比较的次数
- 每一次比较的简化
- 基于场景物体在屏幕上的二维投影和深度信息,图像/图形二维空间的碰撞检测:
- 通过颜色检测碰撞

- 基于碰撞点的检测:本质是区域检测的一种
- 一般在两个运动物体中的一个物体上设置碰撞点,在另一个物体上设置检测区域,运行时逐个判断碰撞点是否在检测区域中。
- 利用规则的几何图形进行快速判定:包围盒:AABB-Axis Aligned Bounding Box
- 简单快速
- 有误差
- 优化:
- 层次包围盒
- 其他包围盒
5.基本几何元素及包围盒碰撞
- 球、AABB、OBB、Frustum、Ray、Triangle、Plane之间的碰撞、包含、内外等位置关系。
- D3D库,Samples/ XNA Collision
- 构建碰撞体、碰撞体空间变换、碰撞体位置检测

6.层次包围体树
层次包围体二叉树的碰撞检测递归算法
七.三维动画制作流程
1.什么是动画制作流程
1.why需要制作流程
- 完整的动画影片制作是一项复杂工程
- 从最初的概念到最终的发行可能经历2~5年的时间
- 可能会有多于500人参与
- 可能一部动画影片的预算会超过 100 M美元
- 需要一个实体的组织机构,将创作过程由概念变为现实
2.什么是动画制作流程
- 流程:生产动画电影的逻辑流水线,步骤
- 每个公司都有自己的制作流程
- 与公司的结构与部门密切相关
- 每部动画电影的制作流程都可能发生变化
- 市场在变化,需求是不同的
- 人工在变化,节省预算
- 技术在变化,提升动画电影的质量
3.项目的主要角色
- 导演-director, creative lead
- POV(Point Of View): 动画片是创意盛宴
- 关注讲故事以及如何讲故事
- 艺术方案的最终决策者
- 在Pixar公司,通常是故事的作者
- 制片-producer,executive lead,执行总监
- POV: 电影是产品,商品
- 负责资金,投资、预算、使用
- 资金使用的最终决策者
- 技术总监lead technical director(lead TD)
- 根据导演的需求,制作与预算匹配的技术方案
- POV: 动画电影是一个项目、工程
- 负责技术部门
- 实现技术的最终决策者,成熟的技术方案 vs 有创新有创意的方案
- 动画总监lead animator
- POV: 电影就是一部演出
- 负责动画部门,角色,造型,动作
- 可以认为是电影的主演,主角

2.创作流程
1.讲故事Story development
- 一切始于故事!一段时间内反复讨论优化的故事
- 过程:
- 首先是一个想法
- 脚本以及配图的故事板
- 修正错误
2.讲故事-Editorial
- 流程的设计者
- 设计故事由哪些场景组成
- 每个场景的时间控制
- 场景的剪辑,场景间的衔接
- 准备不同的发行版本
3.艺术-Art development
- 设计整部电影中采用的角色、服装、道具的艺术风格,原型
- 传统创作流程通过速写,雕塑实现
- 创作过程
- 从现实世界物体开始
- 设计外观:形状、颜色、材质
- 设计表情与动作
- 对于角色,雕刻一些塑像
4.Art development- environments

5.配音-Casting
- 动画角色需要有匹配角色特征的语音-也可以放在后期

6.建模-Modeling
- 定义三维造型
- 过程
- 从艺术创作数据起始(绘制,雕刻)
- 在建模环境中构建虚拟几何模型
- 模型需要满足:
- 看上去漂亮,可爱
- 功能上符合创作流程的需求
- 变形满足动画的需求
7.着色-shading
- 定义材质属性
- 颜色、纹理、光照反射
- 过程
- 了解真实世界的物体外观
- 研究物体外观的物理属性以及理解主要特征,例如
- 什么使毛皮看上去像是毛皮,而不是头发或草
- 什么因素使得金属看上去陈旧
- 与动画电影的整体外观风格相匹配
8.角色绑定-Character rigging
- 准备一个动画角色
- 定义运动的控制点(关节点)
- 定义角色运动时的变形
- 过程
- 从创作数据开始
- 不断的调试关节点测试运动外观
9.角色绑定-Character rigging
- 准备一个动画角色
- 定义运动的控制点(关节点)
- 定义角色运动时的变形
- 过程
- 从创作数据开始
- 不断的调试关节点测试运动外观
10.道具、服装 -Set dressing
- 创建组建场景需要的道具,为演出做准备
11.布局-Layout(3D 故事板)
- 设计相机
- 起始位置
- 帧 – 能够看到哪些物体
- 运动
- 设计主要物体的位置
- 动画的起始点
- 利用故事板作为参照
12.动画-Animation
- 角色运动和表情
- 过程
- 了解真实的运动
- 为电影设计运动的风格
- 与表演很近似
- 通常需要定义新的肢体语言
- 技术
- 关键帧动画/ 运动捕捉
- 非常耗时的阶段!
- 需要占用大量的预算和时间
- 成为大公司和小团队区别的标志
- 难以形成“economy of scale“ (规模经济)
13.仿真、特效-Simulation、Effects
- 基于物理的动画
- 通过物理模型解算仿真动作
- 应用
- 人物角色:头发、衣服、皮肤
- 自然界运动: 水、火、烟雾
- 天气:雨、雪、狂风
- 特效: 爆炸
14.光照与渲染-Lighting & Rendering
- 设计场景光照,计算最终结果图像
- 过程
- 了解现实世界的光照情况
- 研究光线与材质的交互
- 简单的材质:塑料、木材
- 复杂的材质:金属
- 角色材质:皮肤、毛发
- 由艺术设计阶段的图片开始
- 添加和改变光源获得最终满意的效果
- Author:Kyrie
- URL:virtual-kyrie.cc/article/2022IntroductionToDigitalMedia
- Copyright:All articles in this blog, except for special statements, adopt BY-NC-SA agreement. Please indicate the source!