原创 基於細胞自動機Cellular Automata(CA)的區域生長

本來沒想研究這個,但Nvidia NPP的《NVIDIA 2D Image And Signal Performance Primitives》這個模塊的NPP Image Processing部分的Filtering Functions

原创 學習CUDA準備Win10+cmake+opencv4.1+opencv_contrib4.1+CUDA+VS2015

  一、環境配置 1、網上很多教程都有,安裝合適自己電腦的CUDA,我已安裝完畢 2、CMake編譯opencv4.1+opencv_contrib4.1+CUDA,網上依舊很多教程。我前幾次編譯時,遇到外網下載、下載超時原因報錯很多,

原创 cv::cuda與CUDA的NPP庫、距離變換和分水嶺並行版本嘗試

因爲不想什麼函數都自己寫設備核函數,看到opencv有對應的cuda版本的函數比如濾波,然而CUDA的NPP庫也提供了對應的濾波函數,我不知道哪個性能更高(當然肯定要比純CPU版本快,但我沒測試過) 一、cv::cuda #includ

原创 opencv4.1無法加載python-cnn模型,編譯第三方庫libtensorflow_cc.so巨坑

兩個月前同事在python下訓練的cnn模型(加了batchnorm層、dropout層,模型是.pb結尾),但發現opencv不支持加載(可能是這樣)。於是我找啊找,發現可以自己編譯第三方庫libtensorflow_cc.so,就可以

原创 python/c++讀/存16bit圖像 tensorflow--different inference result in python/c++

以前python下訓練、驗證模型,工程化到C++驗證結果與python下一致。 這次python下重新搭建訓練模型、驗證模型,沒問題,結果是正確的。但是當工程化到c++時發現c++結果不正確且與python下驗證結果不一致。 python

原创 不規則形狀重疊overlapping圖像的精準分割--草稿

折騰了很久,目前效果終於比較滿意了,可能越複雜越分割準確,目前還在細調中。 如圖這種不規則物體,(外文那些分割很喜歡用規則的細胞,都是圓形或者中間有一個細胞核,那種比較好分割,對我的需求沒什麼用) 用的是類似這種圖片,放出部分結果:

原创 c++嵌python3.5與 ubuntu解決tensorflow C++警告SSE4.1 SSE4.2 AVX AVX2 FMA XLA

看過前幾篇的應該知道每次tensorflow c++預測時都會報警如下圖所示: 即: 2019-07-16 10:33:52.057179: I tensorflow/core/platform/cpu_feature_guard.c

原创 ubuntu下tensorflow 2.0 c++動態庫編譯gpu版本

之前所有寫的tensorflow相關的東西都是CPU下的。現在公司一臺有Nvidia GTX 1060的電腦空餘,於是在這臺電腦上重裝ubuntu後開始編譯tensorflow_cc.so的GPU版本並使用。仔細說來有ABCDEF六步驟如

原创 tensorflow c++加載checkpoint model.meta model.index報錯解決及轉cv::Mat爲Tensor

在上一篇中已經成功用tensorflow C++測試過好幾個例子,說明tensorflow c++安裝編譯運行已經沒有問題。 這次不是加載.pb模型而是要加載如下圖所示的模型: 這是python版本: import tensorflo

原创 tensorflow c++ API與QT5.9.6衝突解決

在將tensorflow c++編譯好的動態庫用於QT項目中時遇到了三個問題,現在介紹解決辦法: 1、編譯時報錯:qint32、Qvector等類型沒有定義,找不到定義之類的。 解決:應該是libtensorflow_cc.so與QT衝突

原创 tensorflow c++ API預測多張圖片batch inference

經過前幾篇的折騰與各種查資料後,單張預測代碼: //one image prediction ---single image int mainsingle() { Session* session; Status statu

原创 關於opencv4.1的dnn及findpeak二維極值

matlab得找極值的函數findpeak只能找一維極值,而且opencv沒有對應的函數,所謂極值就是比周圍的值都大,然後看需求要什麼程度的極值: /*計算可分割石頭的中心點--大石頭會有點過分割 * singlechannel---

原创 ug1270、ug1253看不懂的地方

一、ug1270 HLS中的優化 雖然可能全程都看得迷迷糊糊,但今天看到這裏,實在疑惑: 1, FPGA裏的sample到底指的什麼啊?我感覺翻譯成什麼好像都不專業,這種C風格的函都是在函數級別就PIPELINE優化,這後部分幾行說如果

原创 畫內輪廓、csv2xml、txt、粗劣膨脹

一、記錄一下,以前沒有畫過內輪廓,知道有嵌套輪廓這個選項,但沒畫過,原來是這樣畫的: int main() { Mat src(200,500,CV_8UC1,Scalar(0)); cv::circle(src,Point(100

原创 cv::cuda與CUDA的NPP庫

因爲不想什麼函數都自己寫設備核函數,看到opencv有對應的cuda版本的函數比如濾波,然而CUDA的NPP庫也提供了對應的濾波函數,我不知道哪個性能更高(當然肯定要比純CPU版本快,但我沒測試過) 一、cv::cuda #includ