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

ccd影像處理

答題得分者是:liangchh
octto741023
一般會員


發表:13
回覆:3
積分:3
註冊:2008-11-25

發送簡訊給我
#1 引用回覆 回覆 發表時間:2008-11-25 12:06:48 IP:140.120.xxx.xxx 訂閱
想請問有再碰ccd的大大門,目前我的狀況已經可以利用bcb去控制ccd顯示畫面(我使用的擷取卡為picolo),現在的問題是,
我想要加入一個程式(是做halftone),但是這是靜態的程式,單純讀圖然後執行,我要加入這個程式到我原本的bcb去控制ccd顯示畫面,
讓顯示的畫面產生halftone的效果,我是要如何去寫呢?可以提供我個方向嗎?感謝!!以下是我寫的halftone的程式
void __fastcall TForm1::Button3Click(TObject *Sender)
{
Image1->Picture->Bitmap->Assign(ori_bitmap);
for(int i=0;iHeight;i )
{
ptr2=(byte*)Image1->Picture->Bitmap->ScanLine[i];
ptr1=(byte*)ori_bitmap->ScanLine[i];
for(int j=0;jWidth;j )
{
sum=ptr2[3*j] ptr2[3*j 1] ptr2[3*j 2];
if(sum>128)
sum=255;
if(sum<=128)
sum=0;
ptr1[j]=(byte)sum;
}
liangchh
一般會員


發表:1
回覆:5
積分:16
註冊:2008-09-30

發送簡訊給我
#2 引用回覆 回覆 發表時間:2008-12-01 16:14:56 IP:68.228.xxx.xxx 訂閱
請問你的意思是即時處理由ccd所擷取的影像然後輸出嗎?

抱歉阿 因為我不是很明白halftone的意思

但看你所描述的問題似乎是對影像做二值化

若是這樣的話

你只需將你的程式碼寫在 timer 原件的事件中

即可即時處理ccd所擷取下來的bitmap了
liangchh
一般會員


發表:1
回覆:5
積分:16
註冊:2008-09-30

發送簡訊給我
#3 引用回覆 回覆 發表時間:2008-12-12 08:13:29 IP:150.135.xxx.xxx 訂閱
要找 timer 原件的話

上方的物件種類選 system

然後有一個時鐘的圖形就是 timer

使用方式就是設定 Object Inspector 的 properties

然後點選 event

On timer 的選項中可以選擇你想要重複執行的物件 ex. button1

效果就等於是一直按 button1

也可以什麼都不選 在留白的空格中點兩下

就會跑出一個 TForm1::Timer1Timer 在你的 code 裡

其中你可以加上想要重覆執行的動作
系統時間:2024-04-24 3:58:08
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!