線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1589
推到 Plurk!
推到 Facebook!

請教各位先進 我現在把JPG檔案讀入運用 Bmp檔案處理,我想在前端輸入時處理有點問題(如內容所示)

答題得分者是:taishyang
auslk
初階會員


發表:35
回覆:77
積分:32
註冊:2003-02-17

發送簡訊給我
#1 引用回覆 回覆 發表時間:2007-05-26 15:00:30 IP:60.245.xxx.xxx 訂閱
各位先進,小弟不材,請教以下問題: (很久沒上版了)    1.我的程式針對Bmp檔案處理,有兩個問題要請教:   1.當輸入的時候,可以讀jpg/bmp檔案(問題在於jpg處理)      ==>jpg檔案要先轉成bmp 做影像處理==>處理後==>轉成原本的檔案儲存      我以下程式應該要再加入savepicture指令我要如何下?請協助!謝謝!    2.讓程式自動去讀取,判斷jpg/bmp      而我的圖檔是儲存規則 d:\x1\x1\filename     我的x1 :x與1 都是可以自動增加 ex:x1 x2 .....        filename也是  file01 file02 ....      這部份我印象中是字串處理,可以請協助指導 我去找哪一部分的資料就可以了             以上兩個問題,我想我是很不用功的人 學過了居然全忘光了 呵呵   也請版主多多包涵像我這種不用功的人!     Best Regards, Pauli(保力+哎)                  <textarea class="cpp" rows="10" cols="60" name="code"> void __fastcall TForm1::Open1Click(TObject * Sender) { TJPEGImage *TheJPEG; if (OpenPictureDialog1->Execute()) { Image1->AutoSize = true; if (OpenPictureDialog1->FilterIndex == 1) // Bmp 開檔 Image1->Picture->LoadFromFile(OpenPictureDialog1->FileName); else if (OpenPictureDialog1->FilterIndex == 2) JPG 開檔 { TheJPEG = new TJPEGImage; TheJPEG->LoadFromFile(OpenPictureDialog1->FileName); Image1->Picture->Bitmap->Assign(TheJPEG); } } } </textarea>
taishyang
站務副站長


發表:377
回覆:5490
積分:4563
註冊:2002-10-08

發送簡訊給我
#2 引用回覆 回覆 發表時間:2007-05-28 11:51:40 IP:122.124.xxx.xxx 未訂閱
<textarea class="cpp" rows="10" cols="60" name="code"> 1. //存檔 if (SavePictureDialog1->Execute()) { TheJPEG->SaveToFile(SavePictureDialog1->FileName); } 2. //顯示00 01 02 .. AnsiString szFileName = ""; for (int i=0; i<=10; i ) { szFileName.printf("d", i); Memo1->Lines->Add(szFileName); } </textarea>
auslk
初階會員


發表:35
回覆:77
積分:32
註冊:2003-02-17

發送簡訊給我
#3 引用回覆 回覆 發表時間:2007-05-28 12:53:02 IP:210.243.xxx.xxx 訂閱
Dear Tasishyang,

好久不見了,謝謝您的指導! ^^
我的問題想法是:

1.當輸入不管是jpg或是bmp 一律用bmp檔案處理
而不要存檔後在叫出來處理,直接處理
2.處理完在存回原本檔案

不知道是否可以這樣做?

Best Regards,
Pauli



===================引 用 taishyang 文 章===================
<textarea class="cpp" rows="10" cols="60" name="code">1. //存檔 if (SavePictureDialog1->Execute()) { ????TheJPEG->SaveToFile(SavePictureDialog1->FileName); } 2. //顯示00 01 02 .. AnsiString szFileName = ""; for (int i=0; i<=10; i ) { ????szFileName.printf("d", i); ????Memo1->Lines->Add(szFileName); } </textarea>
taishyang
站務副站長


發表:377
回覆:5490
積分:4563
註冊:2002-10-08

發送簡訊給我
#4 引用回覆 回覆 發表時間:2007-05-28 13:59:22 IP:122.124.xxx.xxx 未訂閱
你必須要知道處理的source是JPG or BMP,無法省略
若Source是JPG
您就必須先用TJPEGImage來取得source
然後再轉成BMP處理,處理完畢後再轉成JPG ---> .jpg
不轉成JPG ---> .bmp
auslk
初階會員


發表:35
回覆:77
積分:32
註冊:2003-02-17

發送簡訊給我
#5 引用回覆 回覆 發表時間:2007-05-31 13:11:00 IP:210.243.xxx.xxx 訂閱
Dear Taishyang, 

我是想寫一個在生產線直接判斷產品OK/NG的程式
設備是直接產生JPG檔案 (Source Image)
而這個程式最主要是希望處理影像速度上快一點
如同CCD影像 不存成BMP 直接處理的意思是一樣
我想法是

1.擷取檔案 jpg 直接轉成bmp(不存檔方式)
2.影響處理
3.判斷OK/NG
4.釋放檔案 下一個檔案擷取

這樣的想法 不知道對於速度上 是否可行

以上
Best Regards,
Pauli(業餘的小Coding)





===================引 用 taishyang 文 章===================
你必須要知道處理的source是JPG or BMP,無法省略
若Source是JPG
您就必須先用TJPEGImage來取得source
然後再轉成BMP處理,處理完畢後再轉成JPG ---> .jpg?
???????????????????????? 不轉成JPG --->? .bmp
taishyang
站務副站長


發表:377
回覆:5490
積分:4563
註冊:2002-10-08

發送簡訊給我
#6 引用回覆 回覆 發表時間:2007-05-31 19:29:34 IP:122.124.xxx.xxx 未訂閱
<textarea class="cpp" rows="10" cols="60" name="code"> TJPEGImage *jpg = new TJPEGImage; jpg->LoadFromFile("1.jpg"); Graphics::TBitmap *bmp = new Graphics::TBitmap; bmp->Assign(jpg); //do something delete jpg; delete bmp; </textarea>
auslk
初階會員


發表:35
回覆:77
積分:32
註冊:2003-02-17

發送簡訊給我
#7 引用回覆 回覆 發表時間:2007-05-31 21:26:16 IP:219.68.xxx.xxx 訂閱
我想我找到答案了 榭拉 
感謝您!



===================引 用 taishyang 文 章===================
<textarea class="cpp" rows="10" cols="60" name="code">????TJPEGImage *jpg = new TJPEGImage; ????jpg->LoadFromFile("1.jpg"); ????Graphics::TBitmap *bmp = new Graphics::TBitmap; ????bmp->Assign(jpg); ????//do something ????delete jpg; ????delete bmp; </textarea>
系統時間:2024-04-29 1:20:41
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!