主要利用了emgucv這個opencv的c#庫,但是由於emgucv裡的nms只能計算rect不能計算rotaterect所以識別水平文字還行,傾斜的就不行了,**如下:(寫的不規範什麼的勿噴....如果有什麼問題請告訴我,互相提高嘛)
using system;
using system.collections.generic;
using system.linq;
using system.text;
using system.threading.tasks;
using system.io;
using system.drawing;
using emgu;
using emgu.cv;
using emgu.util;
using emgu.cv.structure;
using emgu.cv.dnn;
using emgu.cv.util;
namespace emgucv_east
else
cvinvoke.imshow("result", frame);
}cvinvoke.waitkey();
}//decode
}public class decode
//cv_assert(scores.dims == 4); cv_assert(geometry.dims == 4); cv_assert(scores.size[0] == 1);
//cv_assert(geometry.size[0] == 1); cv_assert(scores.size[1] == 1); cv_assert(geometry.size[1] == 5);
//cv_assert(scores.size[2] == geometry.size[2]); cv_assert(scores.size[3] == geometry.size[3]);
cvexception.equals(scores.dims, 4);
cvexception.equals(geometry.dims, 4);
var s =scores.sizeofdimension;
var sdata = scores.getdata();
//var x = sdata.getvalue(0,0,0,0);
var gdata = geometry.getdata();
//var y = sdata.getvalue(0, 0, 0, 0);
listt_detections = new list();
listt_confidences = new list();
listr_detections = new list();
for (int y = 0; y < s[2]; ++y)
{for (int x = 0; x < s[3]; x++)
{float score = (float)sdata.getvalue(0, 0, y, x);
if (score思路和c++版本一樣,只是有些資料型別什麼的比較不一樣,稍微麻煩點,最後識別效果
nms的問題只能自己手寫了。。。。
c 呼叫Tensorflow模組
最近在搞kinect人體骨架識別的研究,因為姿勢識別要用到深度學習方面的東西,而現在比較流行的深度學習框架是tensorflow,對python支援的相當好,我的專案是用c 寫的,難免這兩種語言做互動,接下來我就c 如何調python做一下總結。一,建乙個win32控制台專案c tensorflow...
c 呼叫tensorflow的例子
乙個很簡單的例子,使用c 呼叫tensorflow。首先需要安裝windows 版本的tensowflow,使用64位的python3.5,如果沒有安裝,需要首先安裝python3.5 然後以管理員方式進入命令列,執行 pip install tensorflow starcorefactory s...
onnx模型轉tensorflow模型
onnx是開源神經網路交換平台,有了它基本上不用糾結用什麼深度學習框架的問題了。我現在記錄一下怎麼將onnx模型轉換成tensorflow模型。1 安裝tensorflow和onnx 我是通過anaconda安裝的。詳情 這個部落格記載了安裝anaconda和onnx的詳情,安裝好anaconda後...