影像處理~~如何將圖片的RGB值量化成2色.8色.64色 |
尚未結案
|
kuo1215
一般會員 發表:1 回覆:0 積分:0 註冊:2007-04-16 發送簡訊給我 |
這是我改成灰階的方法
但是要怎嚜改成只有兩色八色....等 //--------------------------------------------------------------------------- #include #pragma hdrstop #include "Unit1.h" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; //--------------------------------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } //--------------------------------------------------------------------------- void __fastcall TForm1::Button1Click(TObject *Sender) { if(OpenPictureDialog1->Execute()) { //Image1->AutoSize=true; Image1->Picture->Bitmap->LoadFromFile(OpenPictureDialog1->FileName); Image1->Picture->Bitmap->PixelFormat=pf24bit; } } //--------------------------------------------------------------------------- void __fastcall TForm1::Button2Click(TObject *Sender) { Close(); } //--------------------------------------------------------------------------- void __fastcall TForm1::Button3Click(TObject *Sender) { int R; int G; int B; int gray; Image2->Picture->Bitmap->Height=Image1->Picture->Bitmap->Height; Image2->Picture->Bitmap->Width=Image1->Picture->Bitmap->Width; Image2->Picture->Bitmap->PixelFormat=pf24bit; for(int i=0;i { for(int j=0;j { R = GetRValue(Image1->Canvas->Pixels[i][j]); G = GetGValue(Image1->Canvas->Pixels[i][j]); B = GetBValue(Image1->Canvas->Pixels[i][j]); gray = (R G B) / 3; Image2->Canvas->Pixels[i][j]=(TColor)RGB(gray,gray,gray); } } //Image2->Picture->Bitmap->Assign() } //--------------------------------------------------------------------------- void __fastcall TForm1::Button4Click(TObject *Sender) { if(Image2->Picture->Bitmap->Empty!=true) { SavePictureDialog1->Execute(); Image2->Picture->Bitmap->SaveToFile(SavePictureDialog1->FileName); } } //--------------------------------------------------------------------------- |
harrypp
中階會員 發表:7 回覆:124 積分:61 註冊:2006-08-31 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |