• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:passthruで起動したexe(opencv使用)が動かない)

passthruで起動したexe(opencv使用)が動かない

このQ&Aのポイント
  • passthru関数を使って画像処理の自作exeを起動する際に問題が発生しています。
  • exeの一部機能であるopenCVのcvLoadImageを呼び出すと正常に動作せず、戻り値が正しく返されない状態です。
  • 関連情報は存在するものの、passthruとopenCVの組み合わせに関する情報が不足しており、解決に苦慮しています。

質問者が選んだベストアンサー

  • ベストアンサー
  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.2

>画像処理のexe そのexeは仕様がどういうもので、php上でどのように実装したい かわからないのでなんとも言えません もしかして・・・phpファイルの特定の位置に画像を表示したい のでしたら実装方法が違うとおもいます。 また単にブラウザ上に画像のみを表示するビューワのようなもの なら、ヘッダーでmimeを指定するだけでいくかも・・・ >shell_exec,systemでも駄目でした。 ダメとはどういう状態なのでしょう? >fopenの説明に関しては知識不足のため意味がわからない ごめんなさい、fpassthru()をみてました マニュアルで先にヒットしてしまうので・・・(苦笑)

Poko-08
質問者

お礼

ありがとうございます。 どうやら、OpenCVのdllが参照できていなかったようです。 dll参照先の設定方法はまだわかりませんが、調べてみます。 ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (1)

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

なぜshell_exec()やsystem()ではなくpassthru()なのでしょう? fopenで開いた処理ではないように見えますが・・・ http://www.php.net/manual/ja/function.fpassthru.php

Poko-08
質問者

お礼

ありがとうございます。 shell_exec,systemでも駄目でした。 fopenの説明に関しては知識不足のため意味がわからないです。すいません。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • OpenCV1.1、OpenCV2.3の使い方

    これまでOpenCV1.1を使っていたのですが類似画像検索をするのにHOG特徴量を用いたいと思い、HOG特徴量を求める関数のあるOpenCV2.3もインストールしました。 その際、OpenCV1.1はアンインストールして、最初からプログラムを書き換えないとダメなのでしょうか?ためしに今まで書いていたプログラムにOpenCV2.3のライブラリをインクルードしてみると、それだけで100個以上のビルドエラーが発生してしまいました。CとC++の違いによるものなのでしょうか? あとPathの設定などもOpenCV1.1のときのものを残したまま、OpenCV2.3用のPathを追加しただけなのですが、大丈夫なのでしょうか? 解決方法がわかる方がいらっしゃれば、教えて下さい。よろしくお願いいたします。

  • OPENCVの画像処理について

    現在OPENCVを使って画像処理の勉強をしているのですが画像を読み込む際 IplImage* cvLoadImage という関数?を使って画像を読み込んでいるのですが 例えばファイルAに10枚画像が入っていたとしてその10枚をIplImage* cvLoadImageで一枚ずつ読み込むのではなくまとめて読みこむ(配列のように読みこんだ画像の順から[1]などの番号が付くような)という関数はないのでしょうか? 画像を変えるたびに「名前.jpg」を変えないといけない手間を省きたいです。

  • OpenCVはCGIで使用できるのでしょうか

    普段、Visual C++でOpenCVを使い、Windowsのネイティブアプリを作る勉強をしています。 しかし今回、web上にてOpenCVの画像処理を用いたプログラムを動かさなければいけなくなりました。 なのですが私はwebに関して全くの素人で、色々調べた所CGIというもので出来そうだと分かりました。 C++とOpenCVを使ってCGIを作り、それをサーバに置くことでネイティブアプリと同じように動かせるのでしょうか? 例えば、クライアントがブラウザから画像をアップロードし、それにCGI(C++とOpenCV)で何らかの画像加工を行って、その結果をブラウザに返して表示するということは出来るのでしょうか。 また、出来るとすれば、クライアント側のPCにOpenCVがインストールされていなくても使えるのでしょうか。 どうぞよろしくお願いします。

  • Opencvで質問

     Opencv初心者です。  今日opencvとVC++2010を設定して今練習中なのですが   #include <stdexcept>   #include <opencv/cv.h>   #include <opencv/highgui.h>   int main (int argc, char* argv[]){   const char *fileName = "C:\\Program Files\\OpenCV2.3.1\\samples\\c\\lena.jpg";   const char *windowName = "lena";   ::IplImage* img = ::cvLoadImage(fileName);   ::cvNamedWindow(windowName);   ::cvShowImage(windowName,img);   ::cvWaitKey();   ::cvDestroyWindow(windowName);   ::cvReleaseImage(&img);   }  と言うサンプルをビルドしたら  1>------ ビルド開始: プロジェクト: 画像処理練習, 構成: Debug Win32 ------  1>LINK : fatal error LNK1104: ファイル 'opencv_core231.lib' を開くことができません。  ========== ビルド: 0 正常終了、1 失敗、0 更新不要、0 スキップ ==========  エラーが出てしまい先に進めません。  もしかしたら他に設定が悪いのでしょうか?  インストールもC:\Program Files\OpenCV2.3.1に名前も変えインストールしました。  ttp://shiotani.cn/20110904vc2010opencv.html  ここを参考にさせていただきました。 よろしくお願いします。

  • OpenCVでの画像処理について

    OpenCVを用いて連続して画像処理を行おうとしています。 単にcvLoadImageを用いて画像処理を行うことはできるのですが、 if(k=1)IplImage *img = cvLoadImage( "gazou1.jpg", -1); if(k=2)IplImage *img = cvLoadImage( "gazou2.jpg", -1); とif文を用いて画像を取り込んで処理して破棄して、新しい画像を取り込んで…と連続して異なる画像を同じ処理をするプログラムを作ると error C2065: 'img' : 定義されていない識別子です。 error C2227: '->height' : 左側がクラス、構造体、共用体、ジェネリック型へのポインタではありません。型は ''unknown-type'' です。 error C2227: '->width' : 左側がクラス、構造体、共用体、ジェネリック型へのポインタではありません。型は ''unknown-type'' です … とたくさんのエラーがでてしまいます。 if文を使わずに同じ画像を何度も処理することはできるのですが… この解消法をわかる方は教えてください。 ぜひ、よろしくお願いします。

  • opencvによる画像処理。

    opencvによる画像処理。 今opencvを使った画像処理をしているのですが、これって普通のプログラム中に関数みたいな感じで使う事って出来ないのでしょうか? 例えば、Cで車両を制御するプログラムを作ってる場合に、車両が何mm進んだ時点で車両に取り付けたカメラを使って、画像処理を行う。みたいな処理をしたいです。 でもopencvのmain文って、引数が二つあってそれをどう渡せばいいのかよく分かりません。 素人なので分かりずらくて申し訳ありません。

  • openCVでのデバックエラー

    画像や動画の研究で、aviファイルから色の抽出などを行うためにIntelのopenCVを使用と考えています。 しかし、自作プログラムやopenCVに付属されているサンプルプログラムさえもデバックが失敗してしまい実行することができません。 OSはWindows Professional version2002のVisualC++ 2005で動かしています。 openCVは「OpenCV_b5a」を使用しています。 インストール時にVC++のインクルードファイルに C:\Program files\OpenCV\cv\include C:\Program Files\OpenCV\cvaux\include C:\Program Files\OpenCV\cxcore\include C:\Program Files\OpenCV\otherlibs\highgui ライブラリファイルに C:\Program files\OpenCV\lib を追加させました。 新しくプロジェクトを作成するたびに、リンカの入力に "cv.lib" "cxcore.lib" "cvaux.lib" "highgui.lib" "ipl.lib" を追加させプログラムを作っています。 しかし、デバックをするとすべてのプログラムにおいて、 'AAA.exe': 'C:\WINDOWS\system32\ntdll.dll' を読み込みました。シンボルが読み込まれていません。 'AAA.exe': 'C:\WINDOWS\system32\kernel32.dll' を読み込みました。シンボルが読み込まれていません。 ・・・・・・ と、シンボルが読み込まれていませんとエラーが沢山表示され、 プログラム '[2508] AAA.exe: ネイティブ' はコード -1 (0xffffffff) で終了しました。 と、失敗して困っています。 初心者ですが、この原因が分かる方いましたらどうぞご教授ください。

  • OpenCVで画像を読み込みたい

    OpenCVを勉強しようと思い先日始めました。 http://chihara.naist.jp/opencv/?FrontPage 上記のサイトに掲載されている通りにVC++ 2008 EEで ・環境変数PATH ・インクルードファイル ・ライブラリファイル ・リンカ の設定をしました。 これでいざプログラムをコンパイルして実行すると何故か画像が読み込んでくれません。 これらの設定以外の他にするべきことがあるのでしょうか? いきなり出鼻を挫かれたので困っています。よろしくお願いします。 OS:XP SP2 開発環境:VC++ 2008 EE 実行したプログラム ---------------------------------------------------------------- #include "cv.h" #include "highgui.h" int main( int argc, char** argv ) { IplImage* img; char* filename = "abc.bmp"; if( argc == 2 && (img = cvLoadImage( filename, 1)) != 0 ) { cvNamedWindow( "Image view", 1 ); cvShowImage( "Image view", img ); cvWaitKey(0); // イベント処理を含む場合には,これが重要. cvDestroyWindow( "Image view" ); cvReleaseImage( &img ); return 0; } return -1; } ----------------------------------------------------------------

  • C++でOpenCV コンパイルでエラー

    超初心者です。 Visual C++2010 ExpressでOpenCVを使おうとしています。 このページを参考にしています。 http://gihyo.jp/dev/feature/01/opencv/0002?page=2 プログラムは以下の通り。 #include <C:\Program Files (x86)\opencv\build\include\opencv\cv.h> #include <C:\Program Files (x86)\opencv\build\include\opencv\highgui.h> int main(int argc, char* argv[]) { IplImage* img; // 画像ファイルポインタの宣言 char imgfile[] = "lena.jpg"; // 読み込み画像ファイル名 // 画像の読み込み img = cvLoadImage(imgfile, CV_LOAD_IMAGE_COLOR); // 画像の表示 cvNamedWindow ("lena", CV_WINDOW_AUTOSIZE); cvShowImage ("lena", img); cvWaitKey (0); cvDestroyWindow("lena"); // 画像の解放 cvReleaseImage(&img); return 0; } コンパイルすると、以下のエラーメッセージが出ます。 1>------ ビルド開始: プロジェクト: try, 構成: Debug Win32 ------ 1> try.cpp 1>c:\program files (x86)\opencv\build\include\opencv\cv.h(63): fatal error C1083: include ファイルを開けません。'opencv2/core/core_c.h': No such file or directory ========== ビルド: 0 正常終了、1 失敗、0 更新不要、0 スキップ ========== どのようにすれば通るのでしょうか? 教えてください。よろしくお願いします。

  • PHPでexeファイル実行

    C言語でMPG形式の画像ファイルを読み込み、画像処理をしてテキスト形式で画像データを出力するプログラムを作成したのですが、 これをPHPプログラム内で動作させ、テキストデータ(できればバイナリのほうがいい)を読み取りたいと思います。 これはexeファイルをexecやsystem関数で実行することで解決できるのでしょうか? また、C言語の画像処理プログラムが画像を読み込んでからテキストデータを作成するまで1分ほどのタイムラグがあります。 どうすればPHP内の処理でexeファイル実行→exeがデータベースから画像を読み込む→ 1分処理待ち→テキスト作成→作成されたテキストデータをPHPで読み込み とできるのでしょうか? ちなみに、exeファイルとphpで作成した画像データベースはサーバー機に置くつもりです。 テキストデータを介さなくても、C言語プログラムからphpに直接データを渡す方法があればそちらのほうが望ましいです。 連続投稿で申し訳ないのですが、急を要するのでぜひともご解答お願いします。

    • ベストアンサー
    • PHP