看板 C_and_CPP 關於我們 聯絡資訊
我的作法是 拿 vs2012 開 opencv project, 且 build 成 dll 拿 bcb 呼叫 dll BCB 的好處是 UI, opencv 拿 bcb build 會失去 intel ipp cuda 這類的好東西, 因此這樣可以解決 ※ 引述《deo2000 (800IM)》之銘言: : 用了一兩年的opencv, : 最近發現 BCB6 寫視窗介面相當好用,執行速度也比VS2010快上很多, : 無奈跟 opencv 結合度好像不太好 : 上網找了相當多的資料, : 發現大多數人經過一番苦幹後可用 BCB6 + opencv2.0 : 但寫 code 的時候還是只能用 1.0 的 function 與IplImage : 有沒有 BCB 使用者,可以成功呼叫出 2.0 的物件與function呢? : 不管我怎麼用,都是找不到"cv"這個namespace,無法用類似cv::imread();這樣的功能 : 1.0 的 function 無法用"cv::"使其自動跳出可選用的 member,變得很麻煩 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 1.34.153.98
bugmens:OpenCV 2.0之後多了很多C++的功能,但VC++編譯出來的DLL 08/01 17:02
bugmens:Name mangling機制VC++和BCB是不同的 08/01 17:04
bugmens:很好奇你真的有呼叫成功嗎 08/01 17:04
extern "C" 即可 我的辨識都是先用 vc2012 寫成核心 dll export 一個 entry 再給 bcb 呼叫即可 中間再透過 IPC 做資料交換 BCB make 出來的 code 沒有 vc 好, 尤其是要講求速度的時候 因為 bcb 裡面有一堆 vcl 的 rtl 會拖累速度 ※ 編輯: chengcti 來自: 1.34.153.98 (08/01 23:18)
bugmens:我一直以為不能直接呼叫VC的dll,原來是透過IPC做資料交換 08/02 02:47
bugmens:感謝提供作法 08/02 02:48