用java能分辨出一张图片的不同部位颜色吗

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用java能分辨出一张图片的不同部位颜色吗相关的知识,希望对你有一定的参考价值。

准确的说是可以。
JAVA可以读入一个图片到内存保存为字节数组,再从数组中找到对应的位置下标,以数组内容判断RGB颜色。不过一般人是不会这么做的。
要看你是在什么项目以什么目的需求来取颜色。大部分方案都是以特殊技巧来实现你所提出的问题。
打个比方,如果图片是我自己上传的,只是显示给别人看的,那么我会把图片不同部位自定义编码,不同编码对应不同颜色。然后在显示时对图片设置热区就行了追问

就象这样的

追答

我已经说过了,要你的的项目和需求。
条条大路通罗马,不一定非得要取颜色,可以用别的方法来代替。前提是,要知道你到底是想实现什么功能,在什么环境,对客户是什么体验

追问

首先需要导入一张饮料瓶封口检测的图片(该图片是手动输入的)

能帮忙把写出来吗

追答

你给的信息太少了,没法写,这样吧,我给你写个参考例子。就以你判断你第一张图为例子吧。分析你那张图,长宽是在240*300左右。正常颜色位置应该是170,150左右。颜色分析是淡红偏暗,里面的颜色应该是红色为主,蓝色为辅。用取色器确认下,主要指标应该是红色在240左右,蓝色在94左右好了,可以写程序了。
这里的字数不够,只能写999个字符,我已经在你另一个问题里把代码贴出来了,你去那个问题里看吧

参考技术A 可以,通过java中的类方法,取得图片的字节数组,数组image[],如果你想取得横坐标x,纵坐标y的颜色值,ARGB=image[y*w+x],w为图片的宽度,ARGB就是这个点的二进制颜色码,转成16进制就是标准颜色码了 参考技术B 完全可以的,图片是像素点组成的,只要你在对图片流中的像素点进行着色分析,就可以看到

Adobe把GAN搞成了缝合怪,凭空P出一张1024分辨率全身人像 | CVPR 2022

博雯 发自 凹非寺
量子位 | 公众号 QbitAI

换脸见多了,换身材的见过吗?

给定一张脸,就能自动换一个下半身,服饰、身材、肤色都毫无PS痕迹:

核心技术当然还是我们熟悉的GAN,但不同的是,现在身体的每个部分都能被PS了。

从脸,肤色、服饰、头发等身体各个部位,甚至到肢体动作,都能被随意设计和组合,最终“缝”成一张1024 × 1024分辨率的全身照片:

而且这张“缝合怪”还完全没有拼接行为带来的阴影和边界:

上方的面部由新方法生成,阴影边界很少

怎么做到的?把用于生成人体不同部位的GAN“拼”起来。

这就是Adobe团队最新提出的一种结合多个预训练的GAN进行图像生成的新方法,论文目前已被CVPR 2022接收:

接下来就一起来看看他们到底是如何实现的。

用PS的方式GAN出个人体

如我们开头所说,这是一种将多个GAN拼接起来使用的方法,研究团队将其称之为InsetGAN

共分为两类GAN:

  • 全身GAN (Full-Body GAN),基于中等质量的数据进行训练并生成一个人体。

  • 部分GAN,其中包含了多个针对脸部、手、脚等特定部位进行训练的GAN。

这两类GAN的合作方式类似于PS:全身GAN是一张已经有打底线稿的画布,而部分GAN则是一张一张叠在上面的图层。

但不同边界的“图层”在叠到画布上时,一定会有出现对齐问题。

比如,将一张脸添加到身体上时,在肤色的一致性、衣服边界和头发披散的自然性上可能出现细节的扭曲和丢失,或出现伪影(Artifacts):

如何才能更好地协调多个GAN,让它们产生一致的像素呢?

研究团队设计了这样一种架构:

他们首先引入了一个边界框检测器,检测部分GAN生成的特定区域在底层画布,也就是全身GAN生成的区域中的位置,经过裁剪后再将特定区域嵌入。

这一过程相当于找到了两个区域之间的一种随机潜码 (latent code),使得所选区域的边界能够和嵌入区域相匹配,以实现无缝合成。

同时,他们还会对这两个区域进行下采样(Downsample),再次增加图像像素内容的一致性。

基于这种方法,InsetGAN可以在训练后生成多张完整人像,同时肤色、头发和相关姿势都能作出相应调整:

研究团队也与之前的生成全身人像的方法CoModGAN做了比较,都是基于左侧的人体进行面部的替换,显然,InsetGAN生成的面部更加自然:

上为InsetGAN,下为CoModGAN

作者介绍

论文共有6位作者,5位来自Adobe研究院,还有1位来自阿卜杜拉国王科技大学(KAUST)。

其中有Adobe的首席科学家Jingwan Lu,是PS 2020中智能肖像、皮肤平滑、着色和神经风格化等过滤器的主要算法贡献者,也是RealBrush笔刷合成器的开发者。

她目前领导的团队主要致力于利用大数据和生成性AI(比如GAN)来进行视觉内容的创造。

所以,准备好足不出户换身材了吗?(手动狗头)

论文地址:
https://arxiv.org/abs/2203.07293

参考链接:
[1]https://www.youtube.com/watch?v=YKFYEt5hvOo
[2]http://afruehstueck.github.io/insetgan/

以上是关于用java能分辨出一张图片的不同部位颜色吗的主要内容,如果未能解决你的问题,请参考以下文章

delphi,图片只保留最多颜色部分,判断一张图片里面哪个颜色最多(TBitMap)

百度地图坐标点的颜色能显示不同颜色吗

K-means算法应用:图片压缩

ps怎么换颜色

python处理图片数据?

JAVA里面如何中创建了一个按钮button,如何设置这个按钮的背景呢? 不是背景颜色,是拿一张图片来作为button