若本文对你有帮助,请点赞、关注我哦!
B站同名up猪,欢迎关注我的账号鸽子不二的个人空间-鸽子不二个人主页-哔哩哔哩视频哔哩哔哩鸽子不二的个人空间,提供鸽子不二分享的视频、音频、文章、动态、收藏等内容,关注鸽子不二账号,第一时间了解UP主动态。https://space.bilibili.com/204913846博客总领目录请看这篇,不看后悔
软件工程专业大学四年学什么_大学近代史学分是多少-CSDN博客https://blog.csdn.net/qq_41587612/article/details/104362661
这门课只上4周,往浅了说就是常识科普(打发时间),往深了说就搞不懂了,教科书的主编就是我的任课老师,这才醒悟大学就是这样扶持自己人的,大四多数老师不要求一定要买书了,大家自己看着办吧。
实验老师会给相关软件包的。
本实验内容需要做前期预习的内容主要分为两个部分,理论知识和工具使用知识。其中理论知识为声音的数字表示含义,各种数字音频的参数,数字声音的获取过程,视频的数字表示含义,各种数字视频的参数,数字视频的获取过程,java编码技术,二维码QR编码等;工具使用知识为cool edit工具的使用、会声会影工具的使用、Myeclipse的手机插件功能。
1、目的任务
本设计的目的在于通过实践使学生全面理解已学的相关课程内容,深刻理解计算机多媒体技术的基本理论思想,主流的发展方向。通过本实验内容,学生们可以理解多媒体技术中声音、图像、视频在计算机中如何存储和处理的。
2、设计内容
第一部分:音视频处理及个性二维码设计
实验1 使用cool edit声音处理
实验2 “会声会影10”数字图像处理
实验3 使用“二维码大师”做个性二维码
第二部分:图像处理及JPEG压缩分析
实验4 使用ACDSee做图像处理
实验5 使用UltraEdit分析图像文件压缩原理
3、实验内容
实验一:使用cool edit声音处理
【应用案例1-1】使用Cool Edit Pro录制个人音乐。
【解】操作步骤如下:
(1)“点击”工具栏中的“📂”按钮来创建新的波形文件,弹出“New Waveform”对话框。可以通过列出的对应的参数设置音频的采样频率(Sample Rate)、量化精度(Resolution)、声道数(Channels),这些决定了声音的质量和声音的数据量。
图1 新建波形
(2)录音开始,点击左下工具栏中的“◉”按钮。当录音结束时,点击工具栏中的“■”按钮停止,完成录音。
图2 录音完成
(3)保存录制的音乐。在【File】菜单下选择【Save As】命令,弹出“Save Waveform As”对话框,在“保存类型”下拉列表中提供了所有的音频文件格式,如wav、mp3、pcm等。
图3 “Save Waveform As”对话框
【案例1-2】使用Cool Edit Pro软件为声音降噪。
【解】操作步骤如下:
(1)点击工具栏中的按钮🔍放大波形,以找出一段适合用来作噪声采样波形。按住鼠标左键不放,拖动选中一部分,然后右击,在弹出的快捷菜单中选择“Copy To New”命令,会把图2中原来部分截取的声音波形段放大为图4所示的波形。
图4 放大的除噪范围
(2)点击菜单中的【Effects】→【Noise Reduction】→【Noise Reduction】命令,弹出“Noise Reduction”对话框,设置参数进行噪声采样。“Noise Reduction”对话框中的参数按默认数值即可。也可随便更改,但有可能会导致降噪后的人声产生较大失真,如图5所示。
图5 “Noise Reduction”对话框
(3)点击【Get Profile from Selection】按钮,此时即获取了刚才截取的样本数据的噪声采样,如图6所示。
图6 降噪器噪声样本采集
(4)保存采样结果。点击【Save Profile】按钮,弹出“Save FFT file”对话框,输入文件名aa.fft,然后点击【保存】按钮。最后关闭“Noise Reduction”对话框,如图7所示。
图7 降噪器噪声样本保存
(5)回到波形编辑界面的原始文件,点击菜单中的【Effects】→【Noise Reduction】→【Noise Reduction】命令,弹出“Noise Reduction”对话框,点击【Load Profile】按钮加载之前保存的噪声采样文件aa.fft进行降噪处理,点击【OK】按钮前,通过【Preview】按钮先试听一下降噪的效果(如果失真太大,说明降噪采样不合格,要重新采样或调整参数),效果满意后再点击【OK】按钮。如图8所示为降噪处理后的效果。
图8 除噪后的音频数据
实验二:“会声会影10”数字图像处理 这道题我没做,因为没有下载到老师的软件
图1 会声会影 10主界面
【案例2-1】
(1)在主界面中选择【影片向导】选项,打开“会声会影影片向导”对话框。
图2 会声会影影片向导
(2)在会声会影影片向导中选择素材库,选择视频或者图像的来源。
图3 影片向导中插入素材
(3)对素材添加属性、主题模板、文字等效果。
图4 对素材添加属性
图5 对素材添加音乐
(4)保存制作的视频
【案例2-2】使用“会声会影编辑器”合成特效影片。
(1)“捕获”——在【捕获】选项卡中可以直接将视频录制到计算机的硬盘上。来自磁带上的节目可以被捕获成单独的文件或自动分割成多个文件。此步骤允许捕获视频和静态图像。点击【捕获】选项卡,右侧中间操作区得到更新(见图5)。
图5 捕获卡选项
(2)“编辑”——在【编辑】选项卡中可以整理、编辑和修整视频素材。
(3)“覆叠”——对于覆叠轨上的数字视频由于画面是在视频轨上,所以可以在属性中选择进入和退出的样式、遮罩和色度等。
(4)“视频滤镜”——在列表框中,可以选择视频滤镜,当选中某个数字视频的时候可以通过选择某个滤镜效果来增加特效。
(5)“效果”——在【效果】选项卡中可以在项目的视频素材之间添加转场。
(6)“标题”——没有开幕词、字幕和闭幕词的影片是不完整的。在【标题】选项卡中,可以创建动态的文字标题或从素材库的各种预设值中选择。
(7)“音频”——如图16所示为实现配音效果。本例是通过录制的方式添加了声音轨中的“uvs120405-001.WAV”,播放的最终效果就是视频轨、覆盖轨、声音轨、标题轨、音乐轨的混合效果。
(8)“分享”——保存制作的影片并上传进行分享。
实验三:使用二维码大师做个性二维码
【案例3-1】使用“生成二维码”建立二维码。
(1)打开二维码大师软件,打开名片信息,填写相关内容,查看生成的二维码。
图1 名片信息二维码制作
点击右下的保存按钮即可保存到计算机中,然后可以通过手机扫描获取,如图3所示。
图2 手机扫描的二维码效果
【案例3-2】使用“美化二维码”完善二维码设计。不知道为什么美化后的二维码无效,可能是软件的问题
(1)在主界面中选择【美化二维码】选项卡,依个人喜好,设置logo,前景类型,背景类型等参数。如图4所示。可以发现对于二维码容错来说,中间可以添加公司企业的logo,不会影响二维码的信息。
图3 美化二维码
【案例3-3】使用“解码二维码”来读取个人的二维码。
(1)在主界面中选择【解码二维码】选项卡,选择二维码图片,打开后选择解码。如图5所示。可见文件描述里各种信息,如模型版本,容错等级,用户姓名,单位名称等,这是咱们刚才制作的名片信息,可以很轻松的除了手机解码,使用此工具也可以解码。
图4 解码二维码
实验四:使用ACDSee做图像处理
图1 ACDSee 10简体中文版主界面
【案例4-1】使用ACDSee 10简体中文版做如下要求的图像处理。
(1)设置图像深度
可以在“查看器”(可以通过选中图像,右击,在弹出的快捷菜单中选择“查看”命令来打开)中修改图像的色深。色深是指图像所包含的颜色范围。通过选择点击【修改】→【更改色深】命令,然后在弹出的级联菜单中选择一个命令,如图2所示。
图2 色深设置
(2)更改RGB值和HSL值
可以调整图像的红色、绿色以及蓝色(RGB)的颜色值。这些选项可以保存为预设值以便日后使用。
具体操作步骤如下:
①在图像上右击,在弹出的快捷菜单中点击【编辑】→【使用编辑器打开】,打开“编辑面板”,如图3所示。
图3 编辑面板
②在“编辑面板”中选择【颜色】选项,左侧弹出如图4所示的面板,通过对应颜色的修改实现图像的颜色设置。
图4 HSL和RGB颜色设置
(3)图像格式转换
可以将图像转换成 ACDSee 支持的任何文件格式。可以单独为每个格式设置选项,指定如何处理多页图像,并自动应用默认转换操作。
具体操作步骤如下:
①在“浏览器”中,选择一个或多个图像,然后选择【修改】→【转换文件格式】命令,打开如图5所示的“批量转换文件格式”对话框。
图5 “批量转换文件格式”对话框
②在“批量转换文件格式”对话框中设置输出选项,如图6所示。
图6 批量转换设置输出选项
③设置多页选项。并通过【开始转换】按钮完成格式转换,如图7所示。
图7 批量转换设置多页选项
实验五:使用UltraEdit分析图像文件压缩原理
以下是实验指导书上的内容!由于没搞懂量化表是怎么得来的,我就不放自己做的实验图了。
先来制作一个简单的8×8大小的像素图,然后把它存成JPEG格式(属性见图1)。方法是用windows的画图工具,定义一个8×8大小的图,用一些色块填充进去,然后另存为 JPEG 格式,如test.jpg,在这里创建了2个相同大小的图像,如图1所示。其中图1(a)为数码相机拍摄的自然真彩色图像(色彩比较丰富),图1(b)来源于画笔的制作(颜色较单一),虽然具有相同的尺寸,但是左侧的图像大小为11.5KB,右侧的图像大小为669个字节,不难看出具有连续和相同色彩的图像JPEG压缩效果更佳。
图1 图像存储属性设置
图2 8×8图像
保存成的文件后缀为jpg,但按标准来说,它是一种JFIF格式标准的文件,里面的图像的压缩方式是JPEG。JFIF是一个文件格式标准,JPEG是一个压缩标准,总体来说它们不是一个概念。JFIF是JPEG File Interchange Format的缩写,也即JPEG文件交换格式。JFIF是一个图片文件格式标准,它是一种使用JPEG图像压缩技术存储摄影图像的方法。JFIF代表了一种“通用语言”文件格式,它是专门为方便用户在不同的计算机和应用程序间传输 JPEG图像而设计的语言。JFIF文件格式(见表1)定义了一些内容是JPEG压缩标准未定义的,如resolution/aspect ratio,color space等。
表1 JPEG段格式
标记缩写 | 占用字节 | 含义 | 标记值 |
SOI | 2 | Start Of Image | FFD8 |
EOI | 2 | End Of Image | FFD9 |
APP0 Marker | 2 | It’s the marker used to identify a JPG file which uses the JFIF specification | FFE0 |
Identifier | 5 | Identifier | JFIF |
SOF0 | 2 | Start Of Frame 0 | FFC0 |
SOS | 2 | Start Of Scan | FFDA |
COM | 2 | Comment | FFFE |
DNL | 2 | Define Number of Lines | FFDC |
DRI | 2 | Define Restart Interval | FFDD |
DQT | 2 | Define Quantization Table | FFDB |
DHT | 2 | Define Huffman Table | FFC4 |
可以用UltraEdit打开刚才保存的JPEG文件查看里面的内容,即可看到上面的各个标记段,如图3所示。
图3 JPEG文件二进制存储形式
在图3上,把刚刚保存的JPEG文件用二进制形式打开后,标注出各种标记如下:
①在起始地址为00000000h的头部有FF D8标记表示图像的开始;
②在起始地址为00000000h的中间有FF E0标记用于识别JPG文件采用JFIF规格;
③在地址为00000010h和00000050h段中有FF DB标记表示两个量化表;
④在地址为00000090h段中有FF C0标记用来表示图像大小的信息;
⑤在地址为000000b0h、000000d0h、00000180h和000001a0h段中有FF C4标记用来表示后面有霍夫曼表。一般一个JPG文件里会有两类霍夫曼表:一个用于DC,一个用于AC,也即实际有4个表,亮度的DC,AC两个,色度的DC,AC两个;
⑥在地址为00000260h段中有FF DA标记用来表示图像数据段;
⑦在地址为00000290h段中最后位置有FF D9标记用来表示图像的结束。
我们再来看看各个标记的细部,具体分析一下各个部分的含义。
(1)图片的识别信息
图片的识别信息首先是分析JPEG的段格式见表2。
表2 JPEG段格式
长度:(高字节,低字节),2字节 |
标识符(identifier),5字节 |
版本号(version),2字节 1字节主版本号,1字节次版本号 |
X和Y的密度单位(units=0:无单位;units=1:点数/英寸;units=2:点数/厘米),1字节 |
X方向像素密度(X density),2字节 |
Y方向像素密度(Y density),2字节 |
缩略图水平像素数目(thumbnail horizontal pixels),1字节 |
缩略图垂直像素数目(thumbnail vertical pixels),1字节 |
缩略图RGB位图(thumbnail RGB bitmap),由前面的数值决定,取值3n,n为缩略图 |
在本案例中(见图4)标记FF E0后为00 10,即为长度16。然后是5字节的JFIF标识符号,说明这是一个JPEG压缩的文件。然后是主/次版本号码。下一个为XY像素的单位,这里为1,表示单位为点数/英寸。然后是XY方向的像素密度,这里是96DPI,最后是缩略图有关信息,这里为0。
图4 JPEG图片的结构信息
(2)量化表(QT)的实例
图片文件的量化表结构见表3。
表3 JPEG量化表结构
长度:(高字节,低字节) |
QT信息(1byte):低4位:QT号(0..3,否则错误),高4位:QT精度,0=8bit,否则16bit |
n字节的QT表,n=64*(精度+1) |
案例中在图5里面的FF DB标记后的值为00 43,也就是长度值为67,接下来的是QT信息,占一个字节;这里是0,表示这个QT表编号为0,并且精度是8bit。然后后面就是64个8×8的QT表的各个系数值了,也即第一个量化表的十进制表示内容,如图5所示,这个表即为JPEG亮度量化表。
图5 JPEG图片的量化表信息
图6 JPEG图片的亮度量化表
第二个量化表的十进制表示的内容为图6所示,这个表的内容即为JPEG色度量化表。
图7 JPEG图片的色度量化表
当你打开不同的JPEG文件,你会看到这两个表可能也是会有区别的。这个主要是使用了不同的量化方式的结果。
(3)图像信息段
JPEG图像信息段的结构如表4所示。
表4 JPEG图像信息段结构
长度:(高字节,低字节) |
数据精度(1byte):每个颜色分量每个像素的位数,通常是8 |
图片高度(高字节,低字节) |
图片宽度(高字节,低字节) |
Components数量(1byte):灰度图是1,YCbCr/YIQ彩色图是3,CMYK彩色图是4 |
每个component:3bytes: Component id(1=Y,2=Cb,3=Cr,4=I,5=Q) 采样系数(bit 0-3 vert,4-7hor) 量化表编号 |
在案例图8所示的内容中,FF C0标记后为00 11即是十进制长度为17,然后是一个字节的数据精度,通常是为8,代表样本位数。接下来是图片的高度,占两字节,这里即为8,然后是图片的宽度,也为8,这也就是我们定义的8×8的内容。然后是component的个数,这里是3,表示YUV。接下来是三组数据,每组数据里,第一个是component ID,第二个是采样系数,这里Y的采样系数为22,说明垂直是2,水平是2。再后面就是量化表的编号了。
图8 JPEG图片的图像信息段
(4)霍夫曼表(Huffman Table)的实例
JPEG图片中的Huffman Table结构见表5。
表5 JPEG的Huffman Table结构
长度:(高字节,低字节) |
HT信息(1byte):低4位:HT号(0..3,否则错误);bit4:HT类型,0=DC table,1=AC table;高3位:必须为0 |
索引表头,16 bytes:长度是1到16范式Huffman编码对应的符号个数 |
值表,n bytes:一个包含了按递增次序,Huffman编码组号对应的各个值,(n=代码总数) |
图9所示为本例的霍夫曼表信息。上面的这个内容FF C4标记后的内容为数据长度(如00 1F为31),再接着的1个字节为HT(Huffman Table)的信息,低4位是HT ID号,第5位是HT表类型标记,再高三位是为0。
①第一个DHT表,00,类型为DC table,HT ID号为0;
②第二个DHT表,10,类型为AC table,HT ID号为0;
③第三个DHT表,01,类型为DC table,HT ID号为1;
④第四个DHT表,11,类型为AC table,HT ID号为1;
图9 JPEG图片的Huffman Table信息
即前两个表为Y亮度分量的DC/AC表,后两个为UV色度分量的DC/AC表。以第一个表为例,因为长度只有31,那么00后面的16字节,即为霍夫曼编码组号,如表6所示.
表6 霍夫曼编码各组元素的个数
霍夫曼 编码组号 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 |
组中个数 | 00 | 01 | 05 | 01 | 01 | 01 | 01 | 01 | 01 | 00 | 00 | 00 | 00 | 00 | 00 | 00 |
从表6中不难看出组号为1的组中代码有0个;组号为2的代码有1个;组号为3的代码有5个;组号为4、5、6、7、8、9的代码各1个。总共12个。再看后续的数据:00 01 02 03 04 05 06 07 08 09 0A 0B,即对应的编码保存值(见表7):
表7 霍夫曼编码表
组号 | 代码 | 对应的编码保存值 |
2 | 00 | 00 |
3 | 01 02 03 04 05 | 001 010 011 100 101 |
4 | 06 | 0110 |
5 | 07 | 00111 |
6 | 08 | 001000 |
7 | 09 | 0001001 |
8 | 0A | 00001010 |
9 | 0B | 000001011 |
从表7中我们发现,实际上对于组号代表的含义为对应编码的二进制位数。其他未出现的组号,对应的数据未使用到。也就是说前面提到过的范式在霍夫曼编码里,目前只使用部分数据即可,原因是这个8×8的图像数据很小。第二个 DHT 表就更复杂些了,长度有181。
(5)图像数据段
JPEG图像数据段的结构见表8。
表8 JPEG图像数据段的结构
长度:(高字节,低字节) |
扫描行内组件的数量(1 byte),通常是3 |
每个组件:2bytes Component id(1=Y,2=Cb,3=Cr,4=I,5=Q),见SOF0 使用的Huffman表: bit 0..3:AC table(0..3) bit 4..7:DC table(0..3) |
图像数据段的分析如图10所示。从地址为00000260h的FF DA为图像扫描的起始标记,接下来的00 0C说明长度为12,然后是03,代表后面所含有的component的数量为3个,也即YUV。然后的01 00代表 component的编号ID为1,既是亮度Y分量,并且对应所使用的霍夫曼表的ID是0的DC/AC表。在接下来是02 11代表component的编号ID为2,既是色度U分量,并且对应所使用的霍夫曼表的ID是1的DC/AC表。在这个段的后面就是所有压缩后的数据。直到结束的FF D9标记表示图像的结束,既EOI(End Of Image)。
图10 JPEG图片的图像数据段