【问题标题】:Converting Red, Green and Blue to RGB将红色、绿色和蓝色转换为 RGB
【发布时间】:2014-08-26 23:00:42
【问题描述】:

首先我从下面的代码中得到红色、绿色和蓝色值,

  BufferedImage  image; 
  File input = new File("digital_image_processing.jpg");
     image = ImageIO.read(input);
     width = image.getWidth();
     height = image.getHeight();
      for(int i=0; i<height; i++){
        for(int j=0; j<width; j++){
           Color c = new Color(image.getRGB(j, i));
           int red = (int)c.getRed();
           int green = (int)c.getGreen() ;
           int blue = (int)c.getBlue() ;

在从 getRGB() 获取红色、绿色和蓝色值后,我想对红色、绿色和蓝色值进行一些修改,然后再次将其转换为相同的 RGB 值,或创建一个新的二维数组RGB 表示红色、绿色和蓝色的组合值。怎么做?? 任何猜测..请。帮助

【问题讨论】:

标签: java colors bufferedimage


【解决方案1】:

Abdul 的答案很棒,但是在创建 Color 类的新对象数千次时它可能真的很慢。最简单的方法是:

int rgb = (red << 16 | green << 8 | blue);

【讨论】:

    【解决方案2】:

    最简单的方法是:

    new Color(red, green, blue).getRGB();  
    

    另外,我看到您对图像处理和图形感兴趣,我建议您my blog 在那里我写了很多关于该主题的文章。

    【讨论】:

      猜你喜欢
      • 2016-08-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-10-31
      • 2014-02-26
      • 1970-01-01
      相关资源
      最近更新 更多