由於OpenCV自帶的cvInitFont和cvPutText函數不支持向圖像中寫入中文,參考這裡的方法,在windows7 64位機上用vs2008+OpenCV2.3.1實現具體步驟如下:
1、新建一個控制台工程Test,先按照 http://www.linuxidc.com/Linux/2012-11/74139.htm 中步驟配置;
2、將C:\WINDOWS\Fonts\simhei.ttf文件和CvxText.h、CvxText.cpp文件復制到工程Test文件夾下,並添加到Test工程中;
3、將CvxText.h中的#include<cv.h> #include <highgui.h>用#include<opnecv2/opencv.hpp>替代;
4、在CvxText.cpp文件首行添加#include”stdafx.h”,在函數setFont末尾加入FT_Set_Pixel_Sizes(m_face, (int)m_fontSize.val[0], 0)語句;
5、將include和lib兩個文件夾放到D:\soft\OpenCV2.3.1\FreeType文件夾下;
6、Tool-->Options-->VC++ Directories:選擇Include files:D:\soft\OpenCV2.3.1\FreeType\include;選擇Library files:D:\soft\OpenCV2.3.1\FreeType\lib;
7、打開Property ,在Release和Debug下分別Linker-->Input-->Additional Dependencies添加freetype235.lib;
8、將原main.cpp文件內容復制到Test.cpp中,將#include<cv.h> #include <highgui.h>用#include<opnecv2/opencv.hpp>替代,將圖像lena.jpg復制到工程Test文件夾下,編譯運行即可。