java 浮雕_java 图像特效之黑白 浮雕和底片
所谓黑白图片其实就是对图像进行去色,也就是灰度化,只要调用之前写过的灰度化函数即可。
底片的原理就是对RGB取补色即可。也就是将当前像素点的RGB值分别与255之差后的值作为当前点的RGB值,即
R = 255 – R;G = 255 – G;B = 255 – B;
浮雕其实就是一种边缘检测,在图像处理基础那个系列中,介绍过的sobel算子,Prewitt算子 或者是拉普拉斯算子我觉得都有着类似的效果
本文采用了新的梯度检测算法,相比之前介绍的边缘检测算子,效果稍弱,但是视觉效果好。
底片的代码:
public Image filter() {
if(this.img.gray)
return this.img; // Grayscale images can not be processed
for (int y = 0; y < this.img.h; y++) {
for (int x = 0; x < this.img.w; x++) {
int c = this.img.data[x + y * this.img.w];
int A = (c >> 24) & 0xff;
int R = (c >> 16) & 0xFF;
int G = (c >> 8) & 0xFF;
int B = (c >> 0) & 0xFF;
R = 255 - R;
G = 255 - G;
B = 255 - B;
this.img.data[x + y * this.img.w] = (A << 24) | (R << 16) | (G << 8) | B;
}
}
return this.img;
}
浮雕的代码:
public Image filter() {
if(this.img.gray)
return this.img; // Grayscale images can not be processed
int[] d = new int[this.img.w*this.img.h]; //what's the fuck. it must be writed as this. not int[] d = this.img.data;
for (int y = 0; y < this.img.h -1; y++) {
for (int x = 0; x < this.img.w -1; x++) {
int pc = this.img.data[x + y * this.img.w];
int PR = (pc >> 16) & 0xFF;
int PG = (pc >> 8) & 0xFF;
int PB = (pc >> 0) & 0xFF;
int c = this.img.data[x + 1 + (y+1) * this.img.w];
int R = (c >> 16) & 0xFF;
int G = (c >> 8) & 0xFF;
int B = (c >> 0) & 0xFF;
R = PR - R + 128;
G = PG - G + 128;
B = PB - B + 128;
d[x + y * this.img.w] = (255 << 24) | (R << 16) | (G << 8) | B;
}
}
this.img.data = d;
this.img.toGray();
return this.img;
}
处理后的效果
其实除了浮雕之外,都可以用颜色矩阵来实现。
java 浮雕_java 图像特效之黑白 浮雕和底片相关推荐
- java 图像特效之黑白 浮雕和底片
阅读本系列,请先看前言!谢谢 所谓黑白图片其实就是对图像进行去色,也就是灰度化,只要调用之前写过的灰度化函数即可. 底片的原理就是对RGB取补色即可.也就是将当前像素点的RGB值分别与255之差后的值 ...
- java 锐化_Java 图像的模糊与锐化
import java.awt.*; import java.awt.event.*; import java.awt.image.*; import javax.swing.*; import ja ...
- [Python图像处理] 二十四.图像特效处理之毛玻璃、浮雕和油漆特效
该系列文章是讲解Python OpenCV图像处理知识,前期主要讲解图像入门.OpenCV基础用法,中期讲解图像处理的各种算法,包括图像锐化算子.图像增强技术.图像分割等,后期结合深度学习研究图像识别 ...
- 跟我学Python图像处理丨图像特效处理:毛玻璃、浮雕和油漆特效
摘要:本文讲解常见的图像特效处理,从而让读者实现各种各样的图像特殊效果,并通过Python和OpenCV实现. 本文分享自华为云社区<[Python图像处理] 二十四.图像特效处理之毛玻璃.浮雕 ...
- 图像处理软件开发记录(六) 图像特效(浮雕、怀旧)
专栏地址:http://blog.csdn.net/column/details/imagep.html 本篇文章主要记录一下图像处理软件中的图像特效(浮雕.怀旧)的实现过程. 图像浮雕效果 浮雕的算 ...
- 实现图像特效之浮雕与雕刻
引言 图像处理软件中,如PhotoShop,免费开源的位图形编辑GIMP软件中,对图像进行特效的浮雕或雕刻功能.本节介绍使用OpenCV实现图像特效之浮雕和雕刻相关知识,并贴出相关参考代码以及输出测试 ...
- C++ OpenCV图像特效处理(剪影/怀旧/浮雕/国画/彩虹/素描特效)
C++ OpenCV图像特效处理(绿幕抠图/剪影/怀旧/浮雕/国画/彩虹/素描特效等)支持定制,Q: 3252314061
- IOS – OpenGL ES 图像侵蚀边缘黑白模糊 GPUImageErosionFilter
目录 一.简介 二.效果演示 三.源码下载 四.猜你喜欢 零基础 OpenGL (ES) 学习路线推荐 : OpenGL (ES) 学习目录 >> OpenGL ES 基础 零基础 Ope ...
- [Python图像处理] 二十五.图像特效处理之素描、怀旧、光照、流年以及滤镜特效
该系列文章是讲解Python OpenCV图像处理知识,前期主要讲解图像入门.OpenCV基础用法,中期讲解图像处理的各种算法,包括图像锐化算子.图像增强技术.图像分割等,后期结合深度学习研究图像识别 ...
最新文章
- CENTOS 7安装步骤apache-tomcat-8.5.34-windows-x86
- Python脚本:将mol2分子库文件拆分为单个mol2文件
- java 超时中断_怎么在超时后中断任务的ExecutorService
- [Config]如何利用ConfigurationSettings.AppSettings.GetValues读取配置文件中多个同Key的value...
- 深度学习核心技术精讲100篇(六十五)-万字长文从ReLU到GELU通讲神经网络激活函数
- log nginx 客户端请求大小_nginx
- 关于 p3p ie 跨域 问题
- 型管件的作用_管道工程基础 - 管件和管道附件的布置规定
- idea搭建java openCV环境
- 2018-2019-2 20162318《网络对抗技术》Exp2 后门原理与实践
- Astar算法基本概念及其实现
- .NET 6 运行在Win7 SP1上出错
- 大司、小司、外包公司
- 7段并行数码管显示实验C语言,七段数码管显示十进制数字 (15)
- 超说网络NO.4 | 深入了解应用层原理(中科大 郑烇)
- SwiftUI 色彩教程之 01什么是色差Color difference
- Tomcat详细使用步骤
- 10000+运维人推荐的最最实用的30个Linux命令!
- vite和webpack的区别
- Ubuntu16 wine安装迅雷
热门文章
- 字节码操控框架ASM - 初识
- git 怎么拉去分支代码_拉取github指定分支上的代码
- 【Linux 内核】调度器 ⑧ ( 进程优先级源码 include\linux\sched\prio.h | 进程分类 | 实时进程 | 普通进程 | 进程优先级数值 | 0 ~ 99 实时进程 )
- PSG开发.edf文件格式解析
- vue跳转页面常用的几种方法
- 压力变送器差压变送器的正确安装方法
- nginx配置禁特定路径下的反向代理
- python语言中浮点数_python浮点数怎么写
- 自然几何之分形(1)
- mysql 10055 解决方案_MySQL提示 Can't connect to MySQL server on'localhost' (10055) 解决方案...