Re: [問題] 關於灰階影像處理..

看板java作者時間19年前 (2006/12/06 15:01), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串4/12 (看更多)
提供一個方法 很久以前寫的 變數的命名實在是...自已都要看不懂嚕 總之把這當黑盒子用就好.. 不要管裡面寫什麼了XD BufferedImage -> double[][] ----------------------------------------------------- double[][] transfer(BufferedImage img){ int w=img.getWidth(); int h=img.getHeight(); int X3_1=0; int X3_2=0; double[][] temp = new double[h][w*3]; double[] a=img.getRaster().getPixels(0, 0, w, h, a); for(int j=0;j<h;j++){ for(int i=0;i<w;i++){ X3_1=(j*w+i)*3; X3_2=i*3; temp[j][X3_2]=a[X3_1]; temp[j][X3_2+1]=a[X3_1+1]; temp[j][X3_2+2]=a[X3_1+2]; } } return temp; } m*[1;37;40m-----------------------------------------------------*[m*[mm m*[1;37;40m-----------------------------------------------------*[m*[mm 轉灰階 void doGray(double[][] da,int x ,int y,int w,int h){ int X3=0; int gray=0; for(int j=y;j<h;j++){ for(int i=x;i<w;i++){ X3=i*3; gray=(int)(0.299*da[j][X3]+0.587*da[j][X3+1]+0.114*da[j][X3+2]); da[j][X3]=da[j][X3+1]=da[j][X3+2]=gray; } } } m*[1;37;40m-----------------------------------------------------*[m*[mm ※ devlish.bbs@ptt.cc (灰色地帶) wrote: > 小弟最近要寫一個影像處理的程式,目前的進度卡在要將圖片轉為灰階陣列顯示出來 > 目前我已經能夠抓到圖片的Pixel值了,想請問是否有能夠用灰階的方式將抓到的值 > 表達並顯示出來? > 可以順便問一下,我目前抓到的值是以一維的方式顯示出來的,但我還不懂如何將一維 > 轉為二維,是否可以指點一下迷津? > public static void main(String[] args) throws Exception { > JFrame window = new JFrame("圖片"); > window.setSize(700,700); > window.setLocation(50,50); > Container c = window.getContentPane(); > new DemoImages(); > Image image = DemoImages.getImage("4.jpg",window); > ImagePanel ip = new ImagePanel(); > ip.setImage(image); > c.add(ip); > window.setVisible(true); > PixelGrabber pixel = new PixelGrabber(image,0,0,image.getWidth(null),image.getHeight(null),false); > pixel.startGrabbing(); > while(!pixel.grabPixels()) { > } > 以上是程式碼...請哪個好心人告訴我一下吧,目前Error一大堆,接近崩潰邊緣>"<.. -- だれかとだれかつなぐ 赤い糸 -- ███ ███ Post by Pistachi ◢█ ▉▉█ █▇█ From 220-134-160-28.HINET-IP.hinet.net ◥█◤ ﹉ ﹍ ﹋ 月光海洋BBS 《mobbs.stut.edu.tw》 163.26.220.130
文章代碼(AID): #15Tcgo00 (java)
討論串 (同標題文章)
文章代碼(AID): #15Tcgo00 (java)