Borland c++開啟圖檔 |
尚未結案
|
wd7142
一般會員 發表:18 回覆:19 積分:7 註冊:2004-01-13 發送簡訊給我 |
|
taishyang
站務副站長 發表:377 回覆:5490 積分:4563 註冊:2002-10-08 發送簡訊給我 |
|
wd7142
一般會員 發表:18 回覆:19 積分:7 註冊:2004-01-13 發送簡訊給我 |
|
taishyang
站務副站長 發表:377 回覆:5490 積分:4563 註冊:2002-10-08 發送簡訊給我 |
wd7142您好:
那試試下面的code可將一張200*160的彩色影像轉成灰階影像
int main(int argc, char* argv[]) { FILE *fp1,*fp2; unsigned char headfile[54]; unsigned char buf[200*3]; unsigned char buf1[200*3]; int x,y; fp1 = fopen("200x160.bmp","rb"); fp2 = fopen("200x160Gray.bmp","wb"); fread(headfile,sizeof(char),54,fp1); fwrite(headfile,sizeof(char),54,fp2); for(y=0 ; y<160 ; y ) { fread(buf,sizeof(char),200*3,fp1); for(x=0 ; x<200 ; x ) { int gray = (buf[x*3] buf[x*3 1] buf[x*3 2])/3; buf1[x*3] = gray ; buf1[x*3 1] = gray ; buf1[x*3 2] = gray ; } fwrite(buf1,sizeof(char),200*3,fp2); } fclose(fp1); fclose(fp2); printf("轉灰階OK!!"); getch(); return 0; }順心 <>~我也是在學習的階段,回答的不好請您多多見諒與指教~> |
wd7142
一般會員 發表:18 回覆:19 積分:7 註冊:2004-01-13 發送簡訊給我 |
引言: wd7142您好: 那試試下面的code可將一張200*160的彩色影像轉成灰階影像int main(int argc, char* argv[]) { FILE *fp1,*fp2; unsigned char headfile[54]; unsigned char buf[200*3]; unsigned char buf1[200*3]; int x,y; fp1 = fopen("200x160.bmp","rb"); fp2 = fopen("200x160Gray.bmp","wb"); fread(headfile,sizeof(char),54,fp1); fwrite(headfile,sizeof(char),54,fp2); for(y=0 ; y<160 ; y ) { fread(buf,sizeof(char),200*3,fp1); for(x=0 ; x<200 ; x ) { int gray = (buf[x*3] buf[x*3 1] buf[x*3 2])/3; buf1[x*3] = gray ; buf1[x*3 1] = gray ; buf1[x*3 2] = gray ; } fwrite(buf1,sizeof(char),200*3,fp2); } fclose(fp1); fclose(fp2); printf("轉灰階OK!!"); getch(); return 0; }順心 <>~我也是在學習的階段,回答的不好請您多多見諒與指教~> >>< face="Verdana, Arial, Helvetica"> 嗯嗯~~~這個程式對我幫助很大!! 那請問你還有類似可參考的嗎?...因為剛接觸想多了解一些!! 真是非常謝謝你了^^"... |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |