我和你有同樣的問題,需要兩個月才能解決這個問題。
最後,我把opencv_highgui220d.dll
和opencv_core220d.dll
放在index.php
的目錄中,它工作正常!
更多細節,下面是我的環境:
操作系統:Windows Vista SP1
HTTP服務器:Appserv2.5.10(Apache2.2.8 + php5.2.6)
根:C :/ Appserv/www/test
根包含。
索引。PHP:
<?php
exec("cv.exe", $out, $val);
echo $val;
?>
cv.cpp:
#include "stdafx.h"
#include <cv.h>
#include <highgui.h>
using namespace cv;
int _tmain(int argc, _TCHAR* argv[])
{
Mat img = imread("a.jpg");
if(!img.data) return -1;
imwrite("b.jpg",img);
return 0;
}
使用Visual Studio 2010來編譯,
項目設置:
Use Run-Time Library: /Mtd
VC++ > Include Directories:
C:\Program Files\OpenCV2.2\include
C:\Program Files\OpenCV2.2\include\opencv
VC++ > Library Directory
C:\Program Files\OpenCV2.2\lib
Linker > Additional Dependencies:
C:\Program Files\OpenCV2.2\lib\opencv_core220d.lib
C:\Program Files\OpenCV2.2\lib\opencv_highgui220d.lib
C:\Program Files\OpenCV2.2\lib\opencv_video220d.lib
C:\Program Files\OpenCV2.2\lib\opencv_ml220d.lib
C:\Program Files\OpenCV2.2\lib\opencv_legacy220d.lib
C:\Program Files\OpenCV2.2\lib\opencv_imgproc220d.lib
大廈後,把cv.exe
到Web根目錄但得到錯誤信息並獲得返回值:0xc0000135
(在$val
)。
谷歌的代碼,並知道它是損失一些DLL,使用依賴沃克(http://www.dependencywalker.com/)知道它需要opencv_highgui220d.dll
和opencv_core220d.dll
。
所以把它們放到web根目錄下。
來源
2011-07-07 16:21:07
Qoo
因此......您希望窗口在運行瀏覽器的機器上打開? – etarion 2011-06-14 19:07:51
嘿......如果是這樣,這很有趣。嘿,我有一個網站,我想讓你訪問。它會在你的系統上安裝所有類型的垃圾 - 甚至不用擔心。 – dqhendricks 2011-06-14 19:48:29
也許你想獲得OpenCV的php綁定,並執行abcd.php中的所有處理。您可以將圖像保存在服務器上,並在abcd.php中添加一個標籤。 – 2011-06-21 18:09:42