前言

一年一度的圣诞节又要到了,虽然不是中国传统节日,但当下很人却很喜欢过这个欢乐的节日,并乐于打造参与属于这个节日的仪式感。

说到仪式感,仪式感有很多,比如

结婚纪念日,给你的妻子买一束鲜花,是婚姻的仪式感;
孩子过生日,给TA做一顿喜欢的饭菜或者举办一个小Party,是亲情的仪式感;
朋友升职,给他送上一份真心的祝福和喜欢的礼物,是友情的仪式感。

还有给自己喜欢的人做一个圣诞小工具,这是属于程序员的仪式感

村上春树曾说,如果没有这些小确幸,人生只不过是干巴巴的沙漠而已。回想那些感到幸福的小瞬间,总会让我们觉得简单而美好。

然而内卷也即将开始。

1、程序员必须内卷,各路语言争相竞技。

python 拥有强大的第三方库,可以制作很多精美的效果,比如绘制颗圣诞
数,做个圣诞雪人,进行图片处理等。

javascript当然不甘落后,圣诞树,玫瑰花,圣诞贺卡,页面效果等也信手拈来。

网上也有大量的相关教程可以学习,各种效果都有。

偶然在一个文章中看到了铅笔画自作,本人也加入了内卷大军中来。不过采用的是C#制作,下面介绍下如何实现。

2、世上本无圣诞老人,所有的礼物都来自爱你的人

先上效果图(图为斋藤飞鸟,网图)

(1)实现步骤

采用opencvsharp第三方库处理

  • 安装第三方库

在工具,NuGet程序包管理器中,选择管理解决方案的NuGet程序包,搜索opencv,下载openCvSharp3-AnyCPU,或者该软件最新版本

  • 图像灰度处理
public Bitmap open_cv_to_gray(String path)
{Mat src = new Mat(path);Mat result = src.CvtColor(ColorConversionCodes.BGR2GRAY);return OpenCvSharp.Extensions.BitmapConverter.ToBitmap(result);
}
  • 图像反色处理
public Bitmap open_cv_to_grayscale(String path)
{Mat src = new Mat(path, ImreadModes.Grayscale);Mat result = new Mat();Cv2.BitwiseNot(src, result);return OpenCvSharp.Extensions.BitmapConverter.ToBitmap(result);
}
  • 反色图像高斯模糊
public Bitmap open_cv_blur(Bitmap bitmap)
{Mat src = OpenCvSharp.Extensions.BitmapConverter.ToMat(bitmap); using (Mat dst = new Mat()){//注意:size 参数一定要是奇数 (均值模糊)  Y 轴模糊Cv2.Blur(src, dst, new OpenCvSharp.Size(21, 21), new OpenCvSharp.Point(-1, -1));Bitmap map = OpenCvSharp.Extensions.BitmapConverter.ToBitmap(dst);return map;}
}
  • 高斯模糊后再次反色
public Bitmap open_cv_to_grayscale(Bitmap bitmap)
{Mat mat = OpenCvSharp.Extensions.BitmapConverter.ToMat(bitmap);Mat result = new Mat();Cv2.BitwiseNot(mat, result);return OpenCvSharp.Extensions.BitmapConverter.ToBitmap(result);
}
  • 最后图像计算

将灰度图和高斯模糊再次反色图进行除法运算

public Bitmap open_cv_divide(Bitmap gray, Bitmap gblur) {Mat mat_gray = OpenCvSharp.Extensions.BitmapConverter.ToMat(gray); Mat mat_gblur = OpenCvSharp.Extensions.BitmapConverter.ToMat(gblur);Mat outmat = new Mat();Cv2.Divide(mat_gray, mat_gblur, outmat, 256);//矩阵相除Cv2.WaitKey(0);return OpenCvSharp.Extensions.BitmapConverter.ToBitmap(outmat);
}

流程如上,安照流程处理就可实现上述效果啦。

(2)下载地址

工具下载地址:
https://download.csdn.net/download/slaron/68210720

C#:圣诞节内卷,铅笔画制作相关推荐

  1. html5圣诞贺卡,用CorelDRAW制作漂亮别致的圣诞贺卡

    用CorelDRAW制作漂亮别致的圣诞贺卡 一.贺卡创意 圣诞卡,圣诞老人的图案当然少不了,而且是一个扛了一大袋礼物的那种.为了表达自己常在电脑前思念她,电脑也是少不了的.主角已经敲定,其它的配角如图 ...

  2. Linux之逻辑卷的制作

    一.逻辑卷的作用: 磁盘分区后,很难再改变它的大小,如果分配不合理,就得重装操作系统.此时逻辑卷就派上作用了,可以动态的增大他们的大小. 二.原理:物理卷-->卷组<--逻辑卷 1.硬盘制 ...

  3. python 圣诞_使用Python制作缩放自如的圣诞老人(圣诞树)

    圣诞节又要到了,虽说我们中国人不提倡过西方的节日,但是商家们还是很喜欢的,估计有对象的男孩纸女孩纸们也很喜欢吧. 今天的主题是为大家展示如何用python做一个不断变大的圣诞老人,就像西游记中能够随意 ...

  4. 微信计步器怎么不计步_送我一顶圣诞帽@星尘StarDust,制作一个圣诞创意微信头像...

    圣诞节快要到了,给头像戴上圣诞帽,给微信朋友圈增加点圣诞气氛.在这手把手教大家准备材料和制作方法,2步就可以完成. 圣诞微信头像 圣诞微信头像是多个图片合成的结果,下文开始讲一下制作流程. 第1步:首 ...

  5. 如何制作一张圣诞贺卡二维码?

    欢乐的圣诞歌已经响起,圣诞节马上就要到了. 全世界的基督教国家都在为迎接这个一年一度最为隆重的节日做准备.装扮圣诞树.准备圣诞礼物.圣诞贺卡.制作圣诞节的美味食物.组织策划圣诞活动--甚至隔着大洋和互 ...

  6. 邀请参加活动的邀请函_圣诞节活动策划邀请函在线制作

    2020年就要过去了,许多人说这一年很难,难上加南.莎士比亚说凡是过去,皆为序章.无论好的还是坏的终究会成为过往,向前看吧. 圣诞节快要到来,商场开始布置精致的橱窗,电商巨头也在忙着做促销,幼儿园的老 ...

  7. linux学习之lvm-逻辑卷管理器

    一.简介 lvm即逻辑卷管理器(logical volume manager),它是linux环境下对磁盘分区进行管理的一种机制.lvm是建立在硬盘和分区之上的一个逻辑层,来提高分区管理的灵活性.它是 ...

  8. 0203逻辑卷管理、RAID磁盘阵列、VD0、管理运行级别

    目录 一.逻辑卷管理 1.逻辑卷 (1).作用: (2).逻辑卷的制作过程 (3).LVM管理工具集 2.制作逻辑卷 (1).建立卷组(VG)    vgcreate (2).建立逻辑卷(LV)   ...

  9. C#开发实战1200例(第Ⅱ卷)(奋斗的小鸟)_PDF电子书

    下载地址:http://pan.baidu.com/share/link?shareid=196846516&uk=721744522 内容简介 <C#开发实战1200例(第Ⅱ卷)> ...

最新文章

  1. java网络编程实例_关于java网络编程的实例代码
  2. oracle 11g安装时设密码 database control,安装oracle 11g 保护Database Control时出错,Database Control已在非安全模式下启动...
  3. Android studio真机调试
  4. Docker容器(container)详解
  5. 1014.QxORM移植
  6. 为什么你设计的网页没有品质感?
  7. JAVA-初步认识-第六章-类类型参数
  8. 优步杭州推出顺路接单功能,不久将向全国开放!
  9. Android键盘属性
  10. 区块链 智能合约安全 重入攻击(re-entrancy attack)DAO incident
  11. matlab ode 实数,关于ode45中erf函数(输入必须为实数完全数的报错问题)
  12. 找不到或无法加载主类怎么办
  13. ie11 html5播放器卡,GitHub - yangyin/html5-player: 基于react的h5播放器
  14. 南京社保详解(绝对有用)
  15. 亚马逊账号关联怎么办?多账号如何自查?
  16. 微信自定义分享的那些坑!
  17. Discuznbsp;bbsnbsp;表结构字段含义详细分…
  18. Learning to Rank(LTR)
  19. 《Python神经网络编程》自己动手编写一个神经网络
  20. 计算机专业电脑i5与i7的区别,电脑i5处理器和i7处理器有什么区别

热门文章

  1. Ajax(阿贾克斯)基础
  2. php post翻页,php的POST值 如何连续跨页传递(不用表单)?
  3. ECharts 设置折线颜色
  4. 万达VS万科:从局部对峙,到互联网全面开火
  5. PYTHON 常用开发工具 IDE
  6. python阿里巴巴_阿里图片采集,python selenium 采集阿里巴巴商品图片数据
  7. RiruEdxposed学习研究(二)手把手编译Riru和Edxposed工程源码
  8. 修改MFC中菜单显示的文字
  9. 基于蓝牙的无线数据采集系统
  10. mysql sqlserver 拷贝_SQLServer复制搭建过程