摘要: http://blog.csdn.net/ki1381/archive/2007/04/17/1568299.aspx 使用数码相机,难免会拍糊一些照片。 但如果只是轻微糊掉,不妨可以尝试先锐化再缩小的办法补救。 锐化看起来很神奇,可以在一定程度内把不清晰的变清晰,这个和柔化正好相反。其实锐化的算法说穿了很简单: 取每一点的周围八点和自己本身共九个点。计算周围八个点的平均值,把自己减去这个平均值得... 阅读全文
posted @ 2007-09-28 17:34 锐 阅读(2406) 评论(0) 推荐(0) 编辑
摘要: 原文http://blog.csdn.net/ki1381/archive/2007/05/10/1603602.aspx 与锐化相反,柔化是使图片看起来更柔滑(其实也是模糊的委婉的说法)。柔化的一个最简单的实现算法就是取图片上的每一点(图片边缘点忽略),计算它周围八个点的平均值作为新像素值。想想也是,之所以看起来模糊,确实是因为周围的点长的有点像,区别不太明显。 // ====... 阅读全文
posted @ 2007-09-28 17:07 锐 阅读(964) 评论(0) 推荐(0) 编辑
摘要: 应听众点播要求,今天讲讲马赛克算法的实现。老规矩,不求甚解,只许看不许问为什么 很多图片处理的算法从原理上讲其实非常简单,难点往往在如何去写算法实现它,更加难的就是如何去优化实现的算法。虽说我一向认为程序员的效率比程序的效率更重要,但为了等处理一张自己拍摄的数码照片,溜出去买杯奶茶顺便再买张彩票回来发现还没算好,无论如何都是不能忍受的。 马赛克算法很简单,说白了就是把一张图片分割成若干个val *... 阅读全文
posted @ 2007-09-28 16:47 锐 阅读(550) 评论(0) 推荐(1) 编辑
摘要: 做图片处理软件,肯定会遇到这样的需求:如何把一张图片放在另一张图片上,比如在大图片中打上公司或个人的Logo等等。 其实原理很简单。假设我们有一张 800 * 600 的大图片(Bitmap b0),想在(10,10)的位置上打上Logo(Bitmap b1),Logo图片大小是 150 * 30。很简单,我们以大图片的(10,10)位置作为起始位置,做一个150 * 30 的矩形,把Logo... 阅读全文
posted @ 2007-09-28 16:40 锐 阅读(1192) 评论(0) 推荐(0) 编辑
摘要: #region 图片旋转函数 /// /// 以逆时针为方向对图像进行旋转 /// /// 位图流 /// 旋转角度[0,360](前台给的) /// public Bitmap Rotate(Bitmap b, int angle) { ... 阅读全文
posted @ 2007-09-28 13:59 锐 阅读(1392) 评论(1) 推荐(0) 编辑
摘要: 旋转图片90的整数倍那真是太简单了。 public static Bitmap KiRotate90(Bitmap img) ...{ try ...{ img.RotateFlip(RotateFlipType.Rotate90FlipNone); ... 阅读全文
posted @ 2007-09-28 11:33 锐 阅读(4807) 评论(0) 推荐(0) 编辑
摘要: //获得图片 Image bg = Image.FromFile("文件地址"); //获得Graphics Graphics g = CreateGraphics(); //以图片中心为原点平移 g.TranslateTransform(bg.Width/2 ,bgg.Height/2); //旋转度数 int i = 60; g.RotateTransform(i); g.Transl... 阅读全文
posted @ 2007-09-28 11:30 锐 阅读(1705) 评论(0) 推荐(0) 编辑