用JAVA生成老电影海报

 

先看图,再讲原理,生成效果对比:


原理


数字图像,由无数个像素组成,通常情况下,每个像素包含有RGB三个值,算法原理其实很简单:

一,遍历所有像素,将RGB的值转换为灰度值,公式为gray =(r+g+b)/3;

二,同时判断这个灰度值的大小是否大于一个阈值,通常为110,大于阈值的rgb三个值都置为255,也就是白色,小于阈值的都置为0,也就是黑色。

三,输出第二步生成的图像,即是如上图所示效果。

我在github上开源了相关程序,我的程序用了javacv,也就是opencv的java版本。地址如下:

https://github.com/Supermax197/oldposter

接下来,再发几幅我做出来的效果图:


  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的微信公众号
  • 我的微信公众号扫一扫
  • weinxin
mxy

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: