社区
Java SE
帖子详情
求助!JAVA图像 对头发染色
cwhqt
2009-11-11 07:58:10
现在想做一个小游戏
想实现选择颜色来改变原来发型的颜色
就像UO(网络创世纪 不知道大家有没有玩过)里面一样,
现在好多游戏也都可以选择发型和发色,我认为他们都是一个图片,
然后通过程序来进行染色的。
...全文
270
17
打赏
收藏
求助!JAVA图像 对头发染色
现在想做一个小游戏 想实现选择颜色来改变原来发型的颜色 就像UO(网络创世纪 不知道大家有没有玩过)里面一样, 现在好多游戏也都可以选择发型和发色,我认为他们都是一个图片, 然后通过程序来进行染色的。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
17 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
smallbear923
2009-11-13
打赏
举报
回复
好复杂,帮顶~
安小寰
2009-11-13
打赏
举报
回复
[Quote=引用 13 楼 cwhqt 的回复:]
不用说监听啊 这块我明白
我想知道的是 图片是PNG格式的 程序读进来是BUUFERIMAGE
然后我就想通过一些算法将图片染色(比如染成黑色或红色)用graphics画上去
我想知道的就是这个算法 大家不要再扯监听了。。。。
[/Quote]
这个算法需要用到的是区域算法,挺复杂的。
1.首先,你要判定发型的区域,计算发型区域边缘各个点。(这点网上搜区域算法,好像涉及矩阵)
2.根据上述获得的复杂多边形区域的矩阵表示进行graphics的填充。
大概就是这么个路子,具体算法有很长的文章介绍的,这不说了。
安小寰
2009-11-13
打赏
举报
回复
楼主我觉得你要这样的处理的话还是直接IMG贴好,要是用ImageObserve实现“染色”效果的话肯定还得在imageUpdate获取头发的区域轮廓然后根据轮廓计算复杂图形进行色彩填充,这样用到graphics还有区域算法。
这里我还是推荐楼主用一个二维数组或者HashMap和List存放发型和发色,比方说二维数组横向是同一发色不同发型,纵向是同一发型不同发色。或者HashMap中以发型为key,以一个ArrayList存放发色。变哪个就掉那个方便多了。
cwhqt
2009-11-13
打赏
举报
回复
不用说监听啊 这块我明白
我想知道的是 图片是PNG格式的 程序读进来是BUUFERIMAGE
然后我就想通过一些算法将图片染色(比如染成黑色或红色)用graphics画上去
我想知道的就是这个算法 大家不要再扯监听了。。。。
nh1011
2009-11-13
打赏
举报
回复
监听是必须得,通过事件触发更改图片或setcolor改变。看你原来的图片是IMG还是graphics画出来的。
hui94781674
2009-11-13
打赏
举报
回复
闭合的染色应该不难···从某一个色素点出发一真向外染色,碰到闭合区域停止染色
cwhqt
2009-11-12
打赏
举报
回复
谢谢楼上的 但没解决我的问题
我想要的就是怎么通过ImageObserve来实现对灰色的发型图片颜色的改变
跟监听什么没关系
有熟悉DELPHI的没 有人用DELPHI写出来了 但我不会DELPHI
程序:http://uo.stratics.com/heptazane/characterviewer/uocview.zip
源码:http://uo.stratics.com/heptazane/characterviewer/uoccode.zip
程序需要UO的客户端
客户端:http://zjuo.chinauo.com/Ultima%20Online.rar
安小寰
2009-11-12
打赏
举报
回复
这样的实现不是通过“染色”来实现的,一般的代码实现都是准备了很多发色发型的Image图片,然后通过你的选择(鼠标点击监听/按钮监听)来查找对应的Image然后改变主窗体中人物的发型发色。
如果真想实现“染色”的功能的话楼主可以参考下Graphics类,里面提供了图形重绘的方法,你提出的要求只要监听你所选择的颜色然后使用重绘线程改变重绘线程中Color的颜色就可以了.
编程黑板报
2009-11-12
打赏
举报
回复
不知道
cwhqt
2009-11-12
打赏
举报
回复
楼上的大哥 我不是这个意思啊
我是要对发型染色啊 不是换发型。。。。
dajiadebeibei9
2009-11-12
打赏
举报
回复
那就触发鼠标点击事件 点击的时候将准备好的发型图片覆盖当前发型图片 将发型图片初始化成一个集合数组,点一次就换一个图片 这样就方便了
scottxp
2009-11-12
打赏
举报
回复
封闭图形的染色是很基本的算法
随便找一本图形学的书都有
cwhqt
2009-11-12
打赏
举报
回复
楼上什么意思?我就是想对一个图片先经过染色画上去啊
scottxp
2009-11-12
打赏
举报
回复
“染色”是实时的,你这个就是贴图而已
dm520
2009-11-12
打赏
举报
回复
不会delphi
cwhqt
2009-11-11
打赏
举报
回复
没人吗?自己顶
MediaPipe
头发
分割技术:精细化毛发渲染与特效实现
MediaPipe
头发
分割技术基于轻量级深度学习模型,支持移动端30fps以上的实时发丝级分割。通过GPU加速与循环反馈机制,提升视频流中
头发
区域的稳定性和精度,适用于虚拟试妆、视频美颜和影视特效等场景,具备跨平台兼容与低功耗优势。
Java
上色,在
java
中着色图片
这篇博客介绍了一个
Java
项目,通过自定义类实现
图像
染色
功能,可以改变
图像
中
头发
的颜色,并添加阴影和反射效果。示例代码展示了如何使用Graphics2D和AlphaComposite创建不同颜色的
图像
版本。
遗传算法(Genetic Algorithm)的学习及简单实现(
java
)
本文介绍遗传算法的基本概念与执行流程,并通过一元函数最大值问题深入浅出地解释遗传算法的应用。此外,还提供了遗传算法的具体实现案例。
简述机器学习和深度学习的区别
本文探讨了机器学习和深度学习的区别,强调了特征工程在两者中的作用。机器学习注重数据和特征,适合需要良好可解释性的场景,如金融风控。而深度学习能自动完成特征工程,适用于
图像
处理和自然语言处理等复杂任务,但需要更多计算资源,通常需要GPU支持。
8月产品升级,为新基建发展注入新动能
百度智能云在智能计算峰会上发布新一代云基础架构“太行”及六大新产品,包括云数据库GaiaDB-X、百度区块链引擎BBE、物联网核心套件IoTCore等,同时升级四大应用平台,加速中国产业智能化升级。
Java SE
62,621
社区成员
307,251
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章