版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第三章第三章 彩色图像处理彩色图像处理 3.1 243.1 24位彩色图像的读取与显示位彩色图像的读取与显示 3.2 3.2 彩色图像的特效处理彩色图像的特效处理 3.3 3.3 彩色图像的界面切换技术彩色图像的界面切换技术 3.4 3.4 彩色图像的动画技术彩色图像的动画技术 程序设计程序设计 打开文件打开文件: Open 文件名文件名 For Binary As #文件号文件号 读取文件读取文件: Get #文件号文件号, 起始字节起始字节, 变量名变量名 关闭文件关闭文件: Close #文件号文件号 3.1 243.1 24位彩色图像的读取与显示位彩色图像的读取与显示 Open CDl
2、g1.FileName For Binary As #1 Get #1, 19, w: Get #1, 23, h: Seek #1, 55 For j = h-1 To 0 step -1 For i = 0 To w - 1 For k = 2 To 0 Get #1, , pic(i, j, k) Next k Next i If w * 3 mod 4 0 Then For k = 1 To 4 - (w * 3) Mod 4) Get #1, , pix Next k End If Next j Close #1 3.1 243.1 24位彩色图像的读取与显示位彩色图像的读取与显示
3、3.2 3.2 彩色图像的特效处理彩色图像的特效处理 对一幅彩色图像的各像素值的对一幅彩色图像的各像素值的R R、G G、B B分量分量 按一定的算法进行变换,并将变换后的新图像值按一定的算法进行变换,并将变换后的新图像值 重新显示出来,则可实现不同效果图像的显示。重新显示出来,则可实现不同效果图像的显示。 对每个像素的对每个像素的R R、B B、G G三分量分别求逆,即用三分量分别求逆,即用 255255分别减去当前像素的分别减去当前像素的R R、G G、B B三个分量值,将三个分量值,将 得到的新值作为图像处理后的值:得到的新值作为图像处理后的值: g(i,j)=255-f(i,j) 3.
4、2.1 3.2.1 逆反处理逆反处理 For j = 0 To h - 1For j = 0 To h - 1 For i= 0 To w - 1 For i= 0 To w - 1 r = 255 pic(i,j,0)r = 255 pic(i,j,0) g = 255 pic(i,j,1)g = 255 pic(i,j,1) b = 255 pic(i,j,2)b = 255 pic(i,j,2) P.PSet (i,j), RGB(r P.PSet (i,j), RGB(r, g, b), g, b) Next i Next i Next j Next j 3.2.1 3.2.1 逆反处
5、理逆反处理 3.2.2 3.2.2 平滑处理平滑处理 将源图中的每个像素都由其相邻将源图中的每个像素都由其相邻N NN N(如(如3 33 3)个像个像 素的平均值来代替。设源图像素的某一颜色分量值为素的平均值来代替。设源图像素的某一颜色分量值为 f(if(i ,j), ,j),平均处理后该像素的某一颜色分量值为平均处理后该像素的某一颜色分量值为g(ig(i,j)j)。 g (i ,j)=(f(i -1,j-1)+ f(i ,j-1)+ f(i +1,j-1)g (i ,j)=(f(i -1,j-1)+ f(i ,j-1)+ f(i +1,j-1) + f(i -1,j)+ f(i ,j)+
6、f(i +1,j) + f(i -1,j)+ f(i ,j)+ f(i +1,j) + f(i -1,j+1)+ f(i ,j+1)+ f(i +1,j+1)/9 + f(i -1,j+1)+ f(i ,j+1)+ f(i +1,j+1)/9 n = Val(Text1.Text): n1 = n * n: n2 = n 2 For j = n2 To h 1-n2 For i = n2 To w 1-n2 rr = 0: gg = 0: bb = 0 For k1 = -n2 To n2 For k2 = -n2 To n2 rr = rr + pic(i + k1, j + k2, 0)
7、gg = gg + pic(i + k1, j + k2, 1) bb = bb +pic(i + k1, j + k2, 2) Next k2 Next k1 rr = rr n1: gg = gg n1: bb = bb n1 Picture2.PSet (i, j), RGB(rr, gg, bb) Next i Next j 3.2.2 3.2.2 平滑处理平滑处理 3.2.3 3.2.3 霓红处理霓红处理 计算源图像素计算源图像素f(if(i ,j) ,j)的三个分量与相邻像素的三个分量与相邻像素f(if(i +1,j)+1,j)、f(if(i ,j+1) ,j+1)的三个分量的梯度
8、(差的平方之和的的三个分量的梯度(差的平方之和的 平方根),然后将梯度值作为处理后像素平方根),然后将梯度值作为处理后像素g(ig(i ,j) ,j) 的三的三 个分量值。个分量值。 22 ) ) 1,(),(), 1(),(),(jifjifjifjifjig For j = 0 To h - 1 For i = 0 To w - 1 r = sqr(pic(i,j,0) - pic(i+1,j,0) 2 +(pic(i,j,0) - pic(i,j+1,0) 2) g = sqr(pic(i,j,1) - pic(i+1,j,1) 2 +(pic(i,j,1) - pic(i,j+1,1)
9、 2) b = sqr(pic(i,j,2) - pic(i+1,j,2) 2 +(pic(i,j,2) - pic(i,j+1,2) 2) Picture2.PSet (i, j), RGB(r, g, b) Next i Next j 3.2.3 3.2.3 霓红处理霓红处理 3.2.4 3.2.4 边缘锐化边缘锐化 源图像素源图像素f(i ,j)三分量值与相邻像素三分量值与相邻像素f(i -1,j-1)的三分的三分 量值按下式计算得处理后像素量值按下式计算得处理后像素g (i ,j) 的三分量值。(式的三分量值。(式 中中k可根据图像具体内容确定)可根据图像具体内容确定)。 | ) 1,
10、 1(), ( |), (), (jifjifkjifjig 3.2.4 3.2.4 边缘锐化边缘锐化 For j = 1 To h - 1For j = 1 To h - 1 For i= 1 To w - 1 For i= 1 To w - 1 r = pic(i,j,0) - Abs(pic(i,j,0) - pic(i-1,j-1,0) r = pic(i,j,0) - Abs(pic(i,j,0) - pic(i-1,j-1,0) g = pic(i,j,1) - Abs(pic(i,j,1) - pic(i-1,j-1,1)g = pic(i,j,1) - Abs(pic(i,j,
11、1) - pic(i-1,j-1,1) b = pic(i,j,2) - Abs(pic(i,j,2) - pic(i-1,j-1,2)b = pic(i,j,2) - Abs(pic(i,j,2) - pic(i-1,j-1,2) Picture1.PSet (i, j), RGB(r, g, b) Picture1.PSet (i, j), RGB(r, g, b) Next i Next i Next j Next j 3.2.5 3.2.5 浮雕处理浮雕处理 计算源图像素计算源图像素f(i ,j)f(i ,j)三三分量分量值值与相邻像素与相邻像素f(i-1,j)f(i-1,j)三三 分
12、量分量值值之差后加上一个常数,然后将该三分量值作为处理后之差后加上一个常数,然后将该三分量值作为处理后 像素像素g(i,j)g(i,j)的值。的值。 kjifjifjig), 1(), (), ( For j = 0 To h - 1For j = 0 To h - 1 For i= 1 To w - 1 For i= 1 To w - 1 r = pic(i,j,0) - pic(i-1,j,0)+128r = pic(i,j,0) - pic(i-1,j,0)+128 g = pic(i,j,1) - pic(i-1,j,1)+128g = pic(i,j,1) - pic(i-1,j,1
13、)+128 b = pic(i,j,2) - pic(i-1,j,2)+128b = pic(i,j,2) - pic(i-1,j,2)+128 Picture1.PSet (i, j), RGB(r, g, b) Picture1.PSet (i, j), RGB(r, g, b) Next i Next i Next j Next j 3.2.5 3.2.5 浮雕处理浮雕处理 3.2.6 3.2.6 镶嵌处理镶嵌处理 处理后图像每一小区域内的所有像素都取此区域内源图处理后图像每一小区域内的所有像素都取此区域内源图 像各像素值之和的平均值。像各像素值之和的平均值。 g(i ,j)=(f(i-
14、1,j-1)+ f(i ,j-1)+ f(i+1,j-1)g(i ,j)=(f(i-1,j-1)+ f(i ,j-1)+ f(i+1,j-1) + f(i-1,j) + f(i ,j) + f(i+1,j) + f(i-1,j) + f(i ,j) + f(i+1,j) + f(i-1,j+1)+ f(i ,j+1)+ f(i+1,j+1)/9 + f(i-1,j+1)+ f(i ,j+1)+ f(i+1,j+1)/9 g(i-1,j-1) g(i ,j-1) g(i+1,j-1) g(i-1,j-1) g(i ,j-1) g(i+1,j-1) g(i-1,j) g(i ,j) g(i+1,j
15、) g(i-1,j) g(i ,j) g(i+1,j) g(i-1,j+1) g(i ,j+1) g(i+1,j+1) g(i-1,j+1) g(i ,j+1) g(i+1,j+1) g(ig(i ,j),j) n = Val(Text1.Text): n1 = n n = Val(Text1.Text): n1 = n * * n: n2 = n 2 n: n2 = n 2 For j = n2 To h n2-1 Step nFor j = n2 To h n2-1 Step n For i = n2 To w n2-1 Step n For i = n2 To w n2-1 Step n
16、 r = 0: g = 0: b = 0 r = 0: g = 0: b = 0 For k1 = -n2 To n2 For k1 = -n2 To n2 For k2 = -n2 To n2 For k2 = -n2 To n2 r = r + pic(i+k1,j+k2,0) r = r + pic(i+k1,j+k2,0) g = g + pic(i-k1,j+k2,1)g = g + pic(i-k1,j+k2,1) b = b + pic(i+k1,j+k2,2) b = b + pic(i+k1,j+k2,2) Next k2 Next k2 Next k1 Next k1 r=
17、 r n1r= r n1: : g = g n1g = g n1: : b = b n1b = b n1 For k1 = -n2 To n2 For k1 = -n2 To n2 For k2 = -n2 To n2 For k2 = -n2 To n2 Picture1.PSet (i + k1, j + k2), RGB(r, g, b) Picture1.PSet (i + k1, j + k2), RGB(r, g, b) Next k2 Next k2 Next k1 Next k1 Next i Next i Next j Next j 3.2.6 3.2.6 镶嵌处理镶嵌处理
18、3.2.7 3.2.7 曝光处理曝光处理 逆转小于逆转小于128128的基本颜色。的基本颜色。 如:(如:(5858,199199,130130)=(197197,199199,130130) R128: RR=255-RR128: RR=255-R G128: GG=255-G G128: GG=255-G B128: BB=255-B B128: BB=255-B For j = 0 To h - 1 For i = 0 To w - 1 r = pic(i,j,0): g = pic(i,j,1): b = pic(i,j,2) If r 128 Then r = 255 - r If
19、g 128 Then g = 255 - g If b h Then n = w Else n = h End If For k = 1 To n - 1 For j = 0 To k If j w And k h Then P.PSet (j, k), RGB(pic(j, k, 0), pic(j, k, 1), pic(j, k, 2) If j h And k w Then P.PSet (k, j), RGB(pic(k, j, 0), pic(k, j, 1), pic(k, j, 2) Next j Next k 3.3.2 3.3.2 图像从左上到右下逐渐进入界面图像从左上到右
20、下逐渐进入界面 3.3.3 3.3.3 图像从中央向四周扩展进入界面图像从中央向四周扩展进入界面 3.3.3 3.3.3 图像从中央向四周扩展进入界面图像从中央向四周扩展进入界面 xmid = Int(w / 2): ymid = Int(h / 2) Max = Int(IIf(h w, w, h) / 2) P.PSet (xmid, ymid), RGB(pic(xmid, ymid, 0), pic(xmid, ymid, 1), pic(xmid, ymid, 2) For k = 1 To Min For i = xmid - k To xmid + k 显示四周的水平像素显示四周
21、的水平像素 P.PSet (i, ymid - k), RGB(pic(i, ymid - k, 0), pic(i, ymid - k, 1), pic(i, ymid - k, 2) P.PSet (i, ymid + k), RGB(pic(i, ymid + k, 0), pic(i, ymid + k, 1), pic(i, ymid + k, 2) Next i For j = ymid - k To ymid + k 显示四周的垂直像素显示四周的垂直像素 P.PSet (xmid - k, j), RGB(pic(xmid - k, j, 0), pic(xmid - k, j,
22、 1), pic(xmid - k, j, 2) P.PSet (xmid + k, j), RGB(pic(xmid + k, j, 0), pic(xmid + k, j, 1), pic(xmid + k, j, 2) Next j Next k If h w Then 显示非正方形图像的多余高度的垂直像素显示非正方形图像的多余高度的垂直像素 For k = Min To Max For i = 0 To w - 1 P.PSet (i, ymid - k), RGB(pic(i, ymid - k, 0), pic(i, ymid - k, 1), pic(i, ymid - k, 2
23、) P.PSet (i, ymid + k), RGB(pic(i, ymid + k, 0), pic(i, ymid + k, 1), pic(i, ymid + k, 2) Next i Next k ElseIf h w Then 显示非正方形图像的多余宽度的垂直像素显示非正方形图像的多余宽度的垂直像素 For k = Min To Max For j = 0 To h - 1 P.PSet (xmid - k, j), RGB(pic(xmid - k, j, 0), pic(xmid - k, j, 1), pic(xmid - k, j, 2) P.PSet (xmid + k,
24、 j), RGB(pic(xmid + k, j, 0), pic(xmid + k, j, 1), pic(xmid + k, j, 2) Next j Next k End If 3.3.3 3.3.3 图像从中央向四周扩展进入界面图像从中央向四周扩展进入界面 x0 = Int(w / 2) y0 = Int(h / 2) max = Int(IIf(h = 0 And x = 0 And y h, w, h) For d = 1 To 450 n * 2 y = d For x = 0 To d If x w And y h Then n = w / h For i = 0 To 60
25、h / 3 + 1 For k = 1 To 20 BitBlt P2.hDC, 0, 0, n * i, i, P1.hDC, w / 3 - n * i, h / 3 - i, &HCC0020 BitBlt P2.hDC, w / 3, 0, w / 3, i, P1.hDC, w / 3, h / 3 - i, &HCC0020 BitBlt P2.hDC, w - n * i, 0, n * i, i, P1.hDC, 2 * w / 3, h / 3 - i, &HCC0020 BitBlt P2.hDC, 0, h / 3, n * i, h / 3, P1.hDC, w / 3
26、 - n * i, h / 3, &HCC0020 BitBlt P2.hDC, w - n * i, h / 3, n * i, h / 3, P1.hDC, 2 * w / 3, h / 3, &HCC0020 BitBlt P2.hDC, 0, h - i, n * i, i, P1.hDC, w / 3 - n * i, 2 * h / 3, &HCC0020 BitBlt P2.hDC, w / 3, h - i, w / 3, i, P1.hDC, w / 3, 2 * h / 3, &HCC0020 BitBlt P2.hDC, w - n * i, h - i, n * i,
27、i, P1.hDC, 2 * w / 3, 2 * h / 3, &HCC0020 BitBlt P2.hDC, w/2-n*i/2, h/2-i / 2, n*i, i, P1.hDC, w / 2 - n*i / 2, h / 2-i / 2, &HCC0020 Next Next i Else n = h / w For i = 0 To w / 3 + 1 For k = 1 To 20 BitBlt P2.hDC, 0, 0, i, n * i, P1.hDC, w / 3 - i, h / 3 - n * i, &HCC0020 BitBlt P2.hDC, w / 3, 0, w
28、 / 3, n * i, P1.hDC, w / 3, h / 3 - n * i, &HCC0020 BitBlt P2.hDC, w - i, 0, i, n * i, P1.hDC, 2 * w / 3, h / 3 - n * i, &HCC0020 BitBlt P2.hDC, 0, h / 3, i, h / 3, P1.hDC, w / 3 - i, h / 3, &HCC0020 BitBlt P2.hDC, w - i, h / 3, i, h / 3, P1.hDC, 2 * w / 3, h / 3, &HCC0020 BitBlt P2.hDC, 0, h - n *
29、i, i, n * i, P1.hDC, w / 3 - i, 2 * h / 3, &HCC0020 BitBlt P2.hDC, w / 3, h - n * i, w / 3, n * i, P1.hDC, w / 3, 2 * h / 3, &HCC0020 BitBlt P2.hDC, w - i, h - n * i, i, n * i, P1.hDC, 2 * w / 3, 2 * h / 3, &HCC0020 BitBlt P2.hDC, w / 2-i / 2, h / 2-n*i / 2, i, n*i, P1.hDC, w/2-i / 2, h / 2- n*i/2,
30、&HCC0020 Next Next i End If (4) 图像四面八方飞入界面图像四面八方飞入界面 (5) 图像以门帘效果进入界面图像以门帘效果进入界面 For i = 0 To w / 10 + 1 For j = 0 To 10 BitBlt Picture2.hDC, j * w / 10, 0, i, h, Picture1.hDC, j * w / 10, 0, &HCC0020 Next Next i (6) 图像以工字效果进入界面图像以工字效果进入界面 For i = 0 To w / 3 + w / 6 BitBlt P2.hDC, w / 3-i, h / 3-i, w
31、 / 3 + 2*i, i, P1.hDC, w / 3-i, h / 3-i, &HCC0020 BitBlt P2.hDC, w / 3-i, 2*h / 3, w / 3 + 2*i, i, P1.hDC, w / 3-i, 2*h / 3, &HCC0020 BitBlt P2.hDC, w / 2 - i, h / 3, 2 * i, h / 3, P1.hDC, w / 2 - i, h / 3, &HCC0020 Next i 2.4 彩色图像的动画技术彩色图像的动画技术 2.4.1 位置不动、形态变化的动画位置不动、形态变化的动画 Private Sub Form_Load() Picture2.Picture = LoadPicture(circle1.bmp) Picture3.Picture = LoadPicture(circle2.bmp) Picture4.Picture = LoadPicture(circle3.bmp) Picture5.Picture = LoadPicture(circle4.bmp) Picture6.Picture = LoadPicture(circle5.bmp) End Sub 2.4.1 位置不动、形态变化的动画位置不动、形态变
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中国政法大学《工程中的数值方法C》2023-2024学年第一学期期末试卷
- 郑州西亚斯学院《现代通信原理》2023-2024学年第一学期期末试卷
- 长江工程职业技术学院《公共服务质量管理》2023-2024学年第一学期期末试卷
- 消费级3D打印机打印精度改进
- 保险行业基础讲解模板
- 业务操作-房地产经纪人《业务操作》名师预测卷4
- 开学晨会发言稿
- 二零二五年政府形象广告服务合同规范
- 二零二五版国际学校外教引进与团队建设协议3篇
- 2024-2025学年新疆乌鲁木齐四十一中高二(上)期末数学试卷(含答案)
- 《道路交通安全法》课件完整版
- 向女朋友认错保证书范文
- 五分数加法和减法(课件)-数学五年级下册
- 2024年四川省绵阳市中考语文试卷(附真题答案)
- 设计材料与工艺课程 课件 第1章 产品设计材料与工艺概述
- 幼儿园反恐防暴技能培训内容
- 食品企业质检员聘用合同
- 中医诊所内外部审计制度
- 自然辩证法学习通超星期末考试答案章节答案2024年
- 2024年国家危险化学品经营单位安全生产考试题库(含答案)
- 护理员技能培训课件
评论
0/150
提交评论