二值化的問題 |
尚未結案
|
frankh
一般會員 ![]() ![]() 發表:25 回覆:36 積分:12 註冊:2005-05-04 發送簡訊給我 |
我用ScrollBar來做二值化處理,而二值化的原圖示已經經過我正規劃的圖..但是卻不能做二值化...當我用ScrollBar顯示卻還是經過正規劃的原圖..請各位大大幫幫忙
二值化的部份
void __fastcall TForm1::ScrollBar1Change(TObject *Sender) { Graphics::TBitmap *Bmp = new Graphics::TBitmap(); Byte *ptr; int r,g,b; int gray; int i,j; int threshold; threshold=ScrollBar1->Position; Edit1->Text=ScrollBar1->Position; Bmp->Assign(Image2->Picture->Bitmap); Image3->Height=Image2->Height; Image3->Width=Image2->Width; for(j=0;j |
RedSnow
版主 ![]() ![]() ![]() ![]() ![]() ![]() 發表:79 回覆:1322 積分:845 註冊:2003-12-15 發送簡訊給我 |
frankh 您好: 針對您的第一個處理程序,我按照我的寫作習慣改寫如下,看看是否能解決您的問題?
void __fastcall TForm1::ScrollBar1Change(TObject *Sender) { Graphics::TBitmap *Bmp = new Graphics::TBitmap(); TRGBTriple* ptr; // 使用 TRGBTriple 以提高程式碼的易讀性 BYTE gray; int i, j; int threshold = ScrollBar1->Position; Image3->Height = Image2->Height; Image3->Width = Image2->Width; Bmp->Height = Image2->Height; Bmp->Width = Image2->Width; // 用 CopyRect 來代替 Assign 的動作 Bmp->Canvas->CopyRect(Rect(0, 0, Bmp->Width, Bmp->Height), Image2->Picture->Bitmap->Canvas, Rect(0, 0, Image2->Width, Image2->Height)); Bmp->PixelFormat = pf24bit; // 確保圖形格式為 24bit for (j=0; j7 天天敲鍵盤 v 時時按滑鼠 8 |
frankh
一般會員 ![]() ![]() 發表:25 回覆:36 積分:12 註冊:2005-05-04 發送簡訊給我 |
|
RedSnow
版主 ![]() ![]() ![]() ![]() ![]() ![]() 發表:79 回覆:1322 積分:845 註冊:2003-12-15 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |