用VB6.0快速实现图象加柔效果

 时间:2024-09-28 07:26:07

对一副图像处理后,可以得到各种各样的效果图。比如图像的锐化图、柔化图、浮雕效果图、复古效果图、彩色便笺效果图等,只要打开Photoshop,你不能不为各种各样的效果图惊叹,一副图片竟能产生出如此之多的效果。  本文对图像处理的特殊效果之一--加柔的实现,介绍了一种简单的算法。

用VB6.0快速实现图象加柔效果

方法/步骤

1、图像加柔的原理  图像加柔效果的原理其实非常简单,可以分为以下三步进行。  第一步:对图像进行分块并选择适当的柔化算子,柔化算子决定图像加柔的效果,加柔的基本思想是某点象素的新值,由该点象素和该点象素周围的象素值共同决定。  第二步:根据加柔算子计算每个象素的新值。  第三步:利用新的象素值,显示图像得到效果图。  应该特别注意:对图像边缘象素的处理。

用VB6.0快速实现图象加柔效果

2、编程应用  下面我们以24位真彩图"girl.bmp"为例,给出用VB6.0编写的程序,该程序分别在window98和Windows2000环境中实现,取得了良好的柔化效果。

用VB6.0快速实现图象加柔效果

3、 I、建立工程:启动VB6.0|新建工程|标准EXE;  程序代码:  通用声明OptionExplicitDimimagepixels(2,1024,1024)AsInteger注释:用来存储读入的图像数据Dimpicturename,picture_savenameAsString

用VB6.0快速实现图象加柔效果

4、I、打开文件PrivateSubopen_Cli罕铞泱殳ck() DimiAsInteger,jA霜杼厮贿sInteger DimredAsLong,greenAsLong,blueAsLong DimpixelAsLong 注释:设置"CancelError"为True CommonDialog1.CancelError=True OnErrorGoToErrHandler注释:设置标志 CommonDialog1.Flags=cdlOFNHideReadOnly注释:设置过滤器 CommonDialog1.filter="AllFiles(*.*)|*.*|TextFiles"&_"(*.txt)|*.txt|pictures(*.gif)|*.gif|pictures(*.bmp)|*.bmp"注释:指定缺省的过滤器 CommonDialog1.FilterIndex=4注释:显示"打开"对话框 CommonDialog1.ShowOpen注释:显示选定文件的名字

用VB6.0快速实现图象加柔效果

5、picturename=CommonDialog1.FileName Ifpicturename=""ThenExitSub Picture1.Picture=LoadPicture(picturename) Picture2.Picture=Picture1.Picture Picture1.Refresh Picture2.Refresh Picture1.AutoSize=True x=Picture1.ScaleWidth y=Picture1.ScaleHeight form1.Visible=False Fori=0Toy-1  Forj=0Tox-1   pixel&=form1.Picture1.Point(j,i)   red=pixel&Mod256   green=((pixel&And&HFF00)/256&)Mod256&   blue=(pixel&And&HFF0000)/65536

用VB6.0快速实现图象加柔效果

6、 imagepixels(0,j,i)=red '分别存储像素点的GRB值   imagepixels(1,j,i)=green   imagepixels(2,j,i)=blue  Next Next form1.Visible=True form1.ShowErrHandler: 注释:用户按了"取消"按钮 ExitSubEndSub

用VB6.0快速实现图象加柔效果

7、 诔罨租磊II、保存文件PrivateSubsave_Click() CommonDialog2.CancelError=True注释:初始化&鳎溻趄酃quot;CancelError"为True OnErrorGoToErrHandler注释:设置标志 CommonDialog2.Flags=cdlOFNHideReadOnly注释:设置过滤器 CommonDialog2.filter="AllFiles(*.*)|*.*|TextFiles"&_"(*.txt)|*.txt|pictures(*.gif)|*.gif|pictures(*.bmp)|*.bmp"注释:指定缺省的过滤器 CommonDialog2.FilterIndex=4注释:显示"打开"对话框 CommonDialog2.ShowSave注释:显示选定文件的名字 picture_savename=CommonDialog2.FileName SavePicturePicture1.Image,picture_savenameErrHandler:注释:用户按了"取消"按钮 ExitSubEndSub

用VB6.0快速实现图象加柔效果

Excel VBA----之do loop循环 使用VB做验证码登陆 如何在vs中修改QT窗口图标和名称? VB实现在PC上通过手机发短消息 html无序列表的使用(18)
热门搜索
台风图片 渣少女战士 宝宝不开心图片 漫画图片 火箭少女成员