亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Java數(shù)字圖像處理之圖像灰度處理

 更新時間:2022年06月10日 16:04:02   作者:智慧的豬-  
這篇文章主要為大家詳細(xì)介紹了Java數(shù)字圖像處理之圖像灰度處理,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了Java數(shù)字圖像處理基礎(chǔ)之圖像灰度處理,供大家參考,具體內(nèi)容如下

一、簡介

圖像灰度化處理可以作為圖像處理的預(yù)處理步驟,在圖像處理中是十分重要的一件事?;叶葓D像上每個像素的顏色值又稱為灰度,指黑白圖像中點的顏色深度,范圍一般從0到255,白色為255,黑色為0。

灰度轉(zhuǎn)換公式:

int gray = (int)(color.getRed() * 0.299 + color.getGreen() * 0.587 + color.getBlue() *0.114);

我們只是需要把每個像素點都轉(zhuǎn)化為灰度值,就可實現(xiàn)圖像的灰度轉(zhuǎn)化;

二、代碼演示

import javax.imageio.ImageIO;
import javax.swing.*;
import java.awt.*;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;

public class ImageGray extends Canvas {
? ? JFrame jframe = new JFrame("圖像灰度處理");
? ? BufferedImage bufferedImage,bufferedImage_end ;
? ? Image image,image_end;

? ? public ImageGray(){
? ? ? ? try {
? ? ? ? ? ? bufferedImage = ImageIO.read(new File("D:\\EDge下載地址\\lena.jpg"));
? ? ? ? } catch (IOException e) {
? ? ? ? ? ? e.printStackTrace();
? ? ? ? }
? ? ? ? jframe.setLayout(null);
? ? ? ? // 定義位置
? ? ? ? jframe.setBounds(200,200,800,600);
? ? ? ? this.setBounds(0,0,800,600);
? ? ? ? jframe.add(this);
? ? ? ? jframe.setVisible(true);
? ? }

? ? @Override
? ? public void paint(Graphics g) {
? ? ? ? image =(Image)bufferedImage;
? ? ? ? image_end =(Image)gray(bufferedImage);
? ? ? ? g.drawImage(image,0,0,null); ?// 顯示原圖
? ? ? ? g.drawLine(350,10,350,600); ? ?// 中間的線
? ? ? ? g.drawImage(image_end,370,0,null); ?// 顯示灰度圖片
? ? }

? ? // 灰度處理,把原圖傳進(jìn)去,傳出來為修改后的圖
? ? public BufferedImage gray(BufferedImage b){
? ? ? ? int width = b.getWidth();
? ? ? ? int height =b.getHeight();
? ? ? ? // 下面這個別忘了定義,不然會出錯
? ? ? ? bufferedImage_end = new BufferedImage(width,height, BufferedImage.TYPE_3BYTE_BGR );
? ? ? ? // 雙層循環(huán)更改圖片的RGB值,把得到的灰度值存到bufferedImage_end中,然后返回bufferedImage_end
? ? ? ? for (int y = 0; y < height; y++) {
? ? ? ? ? ? for (int x = 0; x < width; x++) {
? ? ? ? ? ? ? ? // 獲取到(x,y)此像素點的Colo,轉(zhuǎn)化為灰度
? ? ? ? ? ? ? ? Color color = new Color(bufferedImage.getRGB(x,y));
? ? ? ? ? ? ? ? int gray = (int)(color.getRed() * 0.299 + color.getGreen() * 0.587 + color.getBlue() *0.114);
? ? ? ? ? ? ? ? Color color_end = new Color(gray,gray,gray);
? ? ? ? ? ? ? ? bufferedImage_end.setRGB(x,y,color_end.getRGB());
? ? ? ? ? ? }
? ? ? ? }
? ? ? ? return bufferedImage_end;
? ? }

? ? public static void main(String[] args) {
? ? ? ? new ImageGray();
? ? }
}

三、結(jié)果演示

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

您可能感興趣的文章:

相關(guān)文章

  • IDEA報錯:java?找不到符號圖文解決過程

    IDEA報錯:java?找不到符號圖文解決過程

    這篇文章主要給大家介紹了關(guān)于IDEA報錯:java?找不到符號解決的相關(guān)資料,運(yùn)行項目時Idea報錯,提示找不到符號,但是這個類在項目里是存在的,網(wǎng)上找了很多文章都沒解決,浪費了一個下午終于弄好了,記錄一下,需要的朋友可以參考下
    2023-08-08
  • IDEA代碼熱部署和熱加載的三種實現(xiàn)方案

    IDEA代碼熱部署和熱加載的三種實現(xiàn)方案

    在日常開發(fā)中,我們需要經(jīng)常修改 Java 代碼,手動重啟項目,查看修改后的效果,如果在項目小時,重啟速度比較快,等待的時間是較短的,我們可以使用代碼熱加載和熱部署解決該問題,本文給大家介紹了三種實現(xiàn)方案,需要的朋友可以參考下
    2023-11-11
  • Java中的ArrayList.trimToSize()方法詳解

    Java中的ArrayList.trimToSize()方法詳解

    這篇文章主要介紹了Java中的ArrayList.trimToSize()方法詳解,前幾天看了Java?ArrayList,沒有明白trimToSize()這個方法是什么意思,所以看了一下源碼并且debug一下自己的一個例子,明白了其中的含義,需要的朋友可以參考下
    2023-11-11
  • MyEclipse整合ssh三大框架環(huán)境搭載用戶注冊源碼下載

    MyEclipse整合ssh三大框架環(huán)境搭載用戶注冊源碼下載

    這篇文章主要為大家詳細(xì)介紹了如何使用MyEclipse整合ssh三大框架進(jìn)行環(huán)境搭載,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-10-10
  • Java常用流程控制語句實現(xiàn)原理解析

    Java常用流程控制語句實現(xiàn)原理解析

    這篇文章主要介紹了Java常用流程控制語句實現(xiàn)原理解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-08-08
  • Java synchronized鎖升級jol過程詳解

    Java synchronized鎖升級jol過程詳解

    這篇文章主要介紹了Java synchronized鎖升級jol過程詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-04-04
  • Java均攤復(fù)雜度和防止復(fù)雜度的震蕩原理分析

    Java均攤復(fù)雜度和防止復(fù)雜度的震蕩原理分析

    這篇文章主要介紹了Java均攤復(fù)雜度和防止復(fù)雜度的震蕩,結(jié)合實例形式分析了Java均攤復(fù)雜度和防止復(fù)雜度的震蕩相關(guān)概念、原理、實現(xiàn)方法與注意事項,需要的朋友可以參考下
    2020-03-03
  • Layui前后臺交互數(shù)據(jù)獲取java實例

    Layui前后臺交互數(shù)據(jù)獲取java實例

    下面小編就為大家分享一篇Layui前后臺交互數(shù)據(jù)獲取java實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-01-01
  • 從java反編譯及字節(jié)碼角度探索分析String拼接字符串效率

    從java反編譯及字節(jié)碼角度探索分析String拼接字符串效率

    這篇文章主要介紹了從java反編譯及字節(jié)碼角度探索分析String拼接字符串效率,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-12-12
  • 淺談Java到底是值傳遞還是引用傳遞呢

    淺談Java到底是值傳遞還是引用傳遞呢

    今天帶大家學(xué)習(xí)Java的相關(guān)知識,文章圍繞著Java到底是值傳遞還是引用傳遞展開,文中有非常詳細(xì)的介紹及代碼示例,需要的朋友可以參考下
    2021-06-06

最新評論