大華相機SDK(halcon版)

2022-09-24 06:15:10 字數 3122 閱讀 2826

根據官方demo修改出來的類

public class dahuacam

protected void onimageevent(hobject image8grey)

/// /// 開啟相機

///

///

public void opencamera(int index)

if (m_dev == null)

m_dev.cameraopened += oncameraopen;

m_dev.connectionlost += onconnectloss;

m_dev.cameraclosed += oncameraclose;

// 開啟裝置 ,呼叫open方法開啟相機

// open device

if (!m_dev.open())

// 設定快取個數為8(預設值為16)

m_dev.streamgrabber.setbuffercount(8);

//註冊相機取流**事件

m_dev.streamgrabber.imagegrabbed += onimagegrabbed;

}/// /// 是否開啟觸發模式

///

/// true為外觸發,false為實時狀態

public void settrigger(bool fon)

else

}/// /// 設定相機**

///

///

public void setexposuretime(int exposuretime)

}/// /// 設定相機增益

///

///

public void setgain(double gain)

}/// /// 開始取流

///

public void startgrabimage()

else

m_dev.streamgrabber.start();

}/// /// 停止取流

///

public void stopgrabimage()

else

m_dev.streamgrabber.stop();

}catch (exception exception)

}/// /// 釋放相機

///

public void releasecamera()

m_dev.streamgrabber.imagegrabbed -= onimagegrabbed; // 反註冊** | unregister grab event callback

m_dev.shutdowngrab(); // 停止碼流 | stop grabbing

m_dev.close(); // 關閉相機 | close camera

}catch (exception ex)

}// 相機開啟**

// camera open event callback

private void oncameraopen(object sender, eventargs e)

// 相機關閉**

// camera close event callback

private void oncameraclose(object sender, eventargs e)

private void onconnectloss(object sender, eventargs e)

// 碼流資料**

// grab callback function

private void onimagegrabbed(object sender, grabbedeventargs e)

// 影象佇列取最新幀

// always get the latest frame in list

m_mutex.waitone();

igrabbedrawdata frame = m_framelist.elementat(m_framelist.count - 1);

m_framelist.clear();

m_mutex.releasemutex();

// 主動呼叫**垃圾

// call garbage collection

gc.collect();

hobject himg;

trycatch (exception exception)}}

public class imageeventargs

}

winform用法

using system;

using system.collections.generic;

using system.componentmodel;

using system.data;

using system.drawing;

using system.linq;

using system.text;

using system.windows.forms;

using thridlibray;

dahuacam cam0 = new dahuacam();

private void form1_load(object sender, eventargs e)

private void cam0_imageevent(object sender, imageeventargs e)

private void button1_click(object sender, eventargs e)

private void button2_click(object sender, eventargs e)

private void button3_click(object sender, eventargs e)

private void form1_formclosed(object sender, formclosedeventargs e)}}

介面

浙江大華筆試

總結 c 的考察特別多,對於c 的空指標和空變數在記憶體中占用長度的考察有好幾道。影象基礎題,有道形態學的題給了兩個看起來差別很大的矩陣,要求寫出變化公式,我?不會做。形態學膨脹和腐蝕的操作一般來說做完不會差別大到看不出來。影象課老師水平很高,課業成績也很好,書翻得不少,但這題不會。還有線性規劃題,...

大華 筆試 編譯碼

1.x為9999,5555時輸出 int func x return countx 解析 重點在x x x 1 結果都為8,把9999轉化為二進位制一步一步來,會發現其中規律 每兩次9999從右到左有一位變為0.2.某cpu在執行一條指令需要取指,分析,執行3步,分別耗時4,2,3單位時間,則流水線...

大華前端一二三面

一面的問題 知道深淺拷貝嗎,如何實現 jquery的鏈式程式設計原理 這個問題當時沒答上,就說的不知道 vuejs的路由導航守衛知道嗎?web語義化,說說你的理解 當時被問懵了,我還真不知道怎麼理解 web語義化,第一反應是h5的語義化標籤,然後腦袋一片空白 巨集任務和微任務知道嗎?解釋一下重繪和回...