全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

java将图片至暗的实现方法

之前也写过一个代码给一张图片然后把图片变暗,今天我们换一种思路,或者是是另外的一种方式将图片至暗,当然方法也是很简单的,但是对于菜鸟的我在这个地方停留了一天半的时间,将图片至暗

现在我们要将这样的一张图片

变成为

虽然说变暗之后确实没有之间亮的好看,但是不管了,反正那么漂亮的|美女|和我的关系我不太大,如果说硬是有关系的话,那应该是在梦中了,好了我们直接上代码

package com.epoint.wdg.test; 
 
import java.awt.Color; 
import java.awt.image.BufferedImage; 
import java.io.File; 
import java.io.IOException; 
 
import javax.imageio.ImageIO; 
 
public class ImgTest { 
  public static void main(String[] args) throws IOException { 
    File file=new File("C://Users/wdg/Desktop/people.png"); 
    //showParamterofImg(file); 
    File file2=changeImgtoGray(file); 
    grayPicToBW(file2); 
  } 
  public static void getRGB(File file) throws IOException{ 
    int []rgb =new int[3]; 
    BufferedImage img=ImageIO.read(file); 
    int pixel=img.getRGB(2, 3); 
    // 下面三行代码将一个数字转换为RGB数字  
    rgb[0] = (pixel & 0xff0000) >> 16;  
    rgb[1] = (pixel & 0xff00) >> 8;  
    rgb[2] = (pixel & 0xff);  
    System.out.println(rgb[0]+"-"+rgb[1]+"-"+rgb[2]); 
     
  } 
  //把图片变灰色 
  public static File changeImgtoGray(File file) throws IOException{ 
    float []rgb =new float[3]; 
    BufferedImage img=ImageIO.read(file); 
    //现在我需要获取到没一点的rgb 
    int y=img.getHeight(); 
    int x=img.getWidth(); 
    BufferedImage grayImage = new BufferedImage(x, y, BufferedImage.TYPE_BYTE_GRAY); 
    for(int i=0;i<x;i++){ 
      for(int j=0;j<y;j++){ 
        int pixel=img.getRGB(i, j); 
      // grayImage.setRGB(startX, startY, w, h, rgbArray, offset, scansize); 
         rgb[0] = (pixel & 0xff0000) >> 16;  
         rgb[1] = (pixel & 0xff00) >> 8;  
         rgb[2] = (pixel & 0xff);  
        int gray=(int) (rgb[0] * 0.3 + rgb[1] * 0.59 + rgb[2] * 0.11); 
         Color color=new Color(gray,gray,gray); 
         img.setRGB(i, j, color.getRGB()); 
 
      } 
    } 
    File newFile = new File("C://Users/wdg/Desktop/"+"/method5.jpg");  
    ImageIO.write(img, "jpg", newFile);  
    // grayPicToBW(newFile); 
    return newFile; 
  } 

其中最为重要的是这一部分:

int y=img.getHeight(); 
int x=img.getWidth(); 
 
for(int i=0;i<x;i++){ 
  for(int j=0;j<y;j++){ 
    int pixel=img.getRGB(i, j); 
     rgb[0] = (pixel & 0xff0000) >> 16;  
     rgb[1] = (pixel & 0xff00) >> 8;  
     rgb[2] = (pixel & 0xff);  
    int gray=(int) (rgb[0] * 0.3 + rgb[1] * 0.59 + rgb[2] * 0.11); 
     Color color=new Color(gray,gray,gray); 
     img.setRGB(i, j, color.getRGB()); 
 
  } 
} 
  File newFile = new File("C://Users/wdg/Desktop/"+"/method5.jpg");  
  ImageIO.write(img, "jpg", newFile);  

这一部分是获取到到图片的每一点的像素或者说ARGB:

int pixel=img.getRGB(i, j); 

然后进一步的获取到RGB,然后我们获取到这点像素的灰度值,

int gray=(int) (rgb[0] * 0.3 + rgb[1] * 0.59 + rgb[2] * 0.11); 

并且创建一个颜色:

lor color=new Color(gray,gray,gray); 

img.setRGB(i, j, color.getRGB()); 

这样我们将图片打印出来就是我们第二张图片那样了

以上这篇java将图片至暗的实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。


# java  # 图片至暗  # JAVA比较两张图片相似度的方法  # Java实现图片对比功能  # 这一  # 给大家  # 的是  # 变暗  # 是在  # 我在  # 我不  # 好了  # 菜鸟  # 太大  # 希望能  # 很简单  # 或者是  # 如果说  # 梦中  # 要将  # 或者说  # 这篇  # 转换为  # 留了 


相关文章: 网站制作需要会哪些技术,建立一个网站要花费多少?  IOS倒计时设置UIButton标题title的抖动问题  网站制作的步骤包括,正确网址格式怎么写?  建站之星价格显示格式升级,你的预算足够吗?  济南网站制作的价格,历城一职专官方网站?  如何在沈阳梯子盘古建站优化SEO排名与功能模块?  制作旅游网站html,怎样注册旅游网站?  上海网站制作开发公司,上海买房比较好的网站有哪些?  免费制作统计图的网站有哪些,如何看待现如今年轻人买房难的情况?  宝塔新建站点报错如何解决?  如何在万网自助建站平台快速创建网站?  c# 在ASP.NET Core中管理和取消后台任务  专业的网站制作设计是什么,如何制作一个企业网站,建设网站的基本步骤有哪些?  制作表格网站有哪些,线上表格怎么弄?  已有域名和空间,如何快速搭建网站?  武汉网站设计制作公司,武汉有哪些比较大的同城网站或论坛,就是里面都是武汉人的?  巅云智能建站系统:可视化拖拽+多端适配+免费模板一键生成  焦点电影公司作品,电影焦点结局是什么?  c++ stringstream用法详解_c++字符串与数字转换利器  建站主机如何选?高性价比方案全解析  北京企业网站设计制作公司,北京铁路集团官方网站?  建站之星各版本价格是多少?  如何选择域名并搭建高效网站?  制作网站哪家好,cc、.co、.cm哪个域名更适合做网站?  如何挑选优质建站一级代理提升网站排名?  建站VPS能否同时实现高效与安全翻墙?  网站制作话术技巧,网站推广做的好怎么话术?  如何基于PHP生成高效IDC网络公司建站源码?  盐城做公司网站,江苏电子版退休证办理流程?  官网建站费用明细查询_企业建站套餐价格及收费标准指南  零基础网站服务器架设实战:轻量应用与域名解析配置指南  如何在云主机快速搭建网站站点?  国美网站制作流程,国美电器蒸汽鍋怎么用官方网站?  教学网站制作软件,学习*后期制作的网站有哪些?  合肥制作网站的公司有哪些,合肥聚美网络科技有限公司介绍?  如何在IIS7中新建站点?详细步骤解析  在线流程图制作网站手机版,谁能推荐几个好的CG原画资源网站么?  建站主机选购指南:核心配置优化与品牌推荐方案  相册网站制作软件,图片上的网址怎么复制?  c# Task.ConfigureAwait(true) 在什么场景下是必须的  网站制作专业公司有哪些,如何制作一个企业网站,建设网站的基本步骤有哪些?  如何通过老薛主机一键快速建站?  天河区网站制作公司,广州天河区如何办理身份证?需要什么资料有预约的网站吗?  建站主机如何安装配置?新手必看操作指南  建站之星备案流程有哪些注意事项?  如何在IIS中新建站点并配置端口与物理路径?  如何快速上传自定义模板至建站之星?  义乌企业网站制作公司,请问义乌比较好的批发小商品的网站是什么?  车管所网站制作流程,交警当场开简易程序处罚决定书,在交警网站查询不到怎么办?  建站之星代理平台如何选择最佳方案? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。