10/22/2015
10/01/2015
Deep learning Library to work easily with opencv on window environment.
I was wrapping caffe library to use easy with opencv and window os environment(named MareDeepDLL).
MareDeepDll is referenced on
http://caffe.berkeleyvision.org/installation.html
https://initialneil.wordpress.com/
The dll is made on this environment
Window 10 64bit,
VS 2013 64bit
OpenCV 3.0 64bit
cuda 6.5 64bit
tbb 64bit
..
All dependency is as follows:
This code is example to use the dll
...
Lenet model was used to test the deep learning classification.
Many other models are introduced on github model zoo.
https://github.com/BVLC/caffe/wiki/Model-Zoo
You can apply other case, on code cDeep.SetNet("lenet_test-memory-1.prototxt", "lenet_iter_10000.caffemodel"); , first param means model structure and second param means the result of deep learning.
If you request to Google Plus to me, I will send the dll with the application code(project).
MareDeepDll is referenced on
http://caffe.berkeleyvision.org/installation.html
https://initialneil.wordpress.com/
The dll is made on this environment
Window 10 64bit,
VS 2013 64bit
OpenCV 3.0 64bit
cuda 6.5 64bit
tbb 64bit
..
All dependency is as follows:
This code is example to use the dll
...
#include < iostream> #include < stdio.h> #include < vector> #include < time.h> #include < opencv2\opencv.hpp> #include < opencv2\core.hpp> #include < opencv2\highgui.hpp> #include < opencv2\videoio.hpp> #include < opencv2\imgproc.hpp> #include "DeepDll_B.h" #ifdef _DEBUG #pragma comment(lib, "opencv_core300d.lib") #pragma comment(lib, "opencv_highgui300d.lib") #pragma comment(lib, "opencv_imgcodecs300d.lib") #pragma comment(lib, "opencv_imgproc300d.lib") //line, circle #else #pragma comment(lib, "opencv_core300.lib") #pragma comment(lib, "opencv_highgui300.lib") #pragma comment(lib, "opencv_imgcodecs300.lib") #pragma comment(lib, "opencv_imgproc300.lib") //line, circle //DEEP lib #pragma comment(lib, "MareDeepDLL.lib") #endif using namespace cv; using namespace std; void main() { //DEEP Class MareDeepDll_B cDeep; //load model and structure cDeep.SetNet("lenet_test-memory-1.prototxt", "lenet_iter_10000.caffemodel"); //gpu using on cDeep.GPU_using(); for (int i = 1; i < 14; ++i) { // time check.. unsigned long AAtime = 0, BBtime = 0; AAtime = getTickCount(); //make file name char str[256]; sprintf_s(str, "%d.jpg", i); printf("%s\n", str); //img load and preprocessing Mat img = imread(str); resize(img, img, Size(28, 28)); cvtColor(img, img, CV_BGR2GRAY); //////////// //classify vector< double> rV; //image and class num (caution!! class num is dependented by learning condition.) lenet is classify one number in 10 digits. rV = cDeep.eval(img, 10); ///////////// //result out for (int i = 0; i < rV.size(); i++) { printf("Probability to be Number %d is %.3f\n", i, rV[i]); } // processing time check. BBtime = getTickCount(); printf("%.2lf sec / %.2lf fps\n", (BBtime - AAtime) / getTickFrequency(), 1 / ((BBtime - AAtime) / getTickFrequency())); //draw namedWindow("test", 0); imshow("test", img); waitKey(0); } }...
Lenet model was used to test the deep learning classification.
Many other models are introduced on github model zoo.
https://github.com/BVLC/caffe/wiki/Model-Zoo
You can apply other case, on code cDeep.SetNet("lenet_test-memory-1.prototxt", "lenet_iter_10000.caffemodel"); , first param means model structure and second param means the result of deep learning.
If you request to Google Plus to me, I will send the dll with the application code(project).
Labels:
Deep learning,
Handwritten Digit Recognition,
Total
Subscribe to:
Posts (Atom)
-
CUDA_ARCH_BIN Table for gpu type Jetson Products GPU Compute Capability Jetson AGX Xavier 7.2 Jetson Nano 5.3 Jetson TX2 6.2 Jetson TX1 5.3 ...
-
In past, I wrote an articel about YUV 444, 422, 411 introduction and yuv <-> rgb converting example code. refer to this page -> ht...
-
As you can see in the following video, I created a class that stitching n cameras in real time. https://www.youtube.com/user/feelmare/sear...
-
make different port number Window > .\python_embeded\python.exe -s ComfyUI\ main.py --port 8189 --windows-standalone-build Linux or Ma...
-
Image size of origin is 320*240. Processing time is 30.96 second took. The result of stitching The resul...
-
* Introduction - The solution shows panorama image from multi images. The panorama images is processing by real-time stitching algorithm...
-
On the window, we made new file easily by right button click. But on the mac, there is no function. So, very incompatible... By the way, ...
-
This is example for background subtraction on opencv 3.2 version previously, I post 2.7 version example on here. http://study.marearts.co...
-
error: . VanillaPipeline.get_train_loss_dict: 12.6875 Traceback (most recent call last): File "/home/mare/anaconda3...
-
>sudo lsof -i :8188 python 231134 mare 45u IPv4 2074469 0t0 TCP localhost:8188->localhost:42132 (CLOSE_WAIT) python 23113...