検索結果 20 件

by まーさ
8年前
フォーラム: C言語何でも質問掲示板
トピック: pythonのwebアプリケーションでクラスオブジェクトを共有したい
返信数: 1
閲覧数: 1173

Re: pythonのwebアプリケーションでクラスオブジェクトを共有したい

自己解決しました。webフレームワークを利用すれば大変簡単に実現可能でした。例えばbottleというフレームワークを利用すると、以下のように初回アクセスで初期化が可能です。2回目からはAlready Make Objectが表示される。 from bottle import route, run import sys import os # object obj = None @route('/api/json/:name') def hello(name): global net if obj is None: obj = <オブジェクト作成> else: return '<h1>Alrea...
by まーさ
8年前
フォーラム: C言語何でも質問掲示板
トピック: pythonのwebアプリケーションでクラスオブジェクトを共有したい
返信数: 1
閲覧数: 1173

pythonのwebアプリケーションでクラスオブジェクトを共有したい

pythonでwebアプリケーションを作成しているのですが、あるオブジェクトをメモリ上に保持して、すべてのリクエストから参照したいと考えています。

というのも、1GB程度ある大きなデータをファイルからロードして作成するオブジェクトのため、リクエストの度にロードすると時間がかかりすぎてしまうためです。

JavaのServletを使用していた際は、Servletの初期化時にオブジェクトを生成したり、初回リクエストの際に生成して2回目からはメモリに展開されたオブジェクトを参照していたのですが、pythonで同様な機能を実装するにはどのようにすれば良いのでしょうか。

どうぞよろしくお願い致します。
by まーさ
9年前
フォーラム: C言語何でも質問掲示板
トピック: C++ - Java で OpenCV の Keypoint の vector が受け渡しできない
返信数: 9
閲覧数: 5253

Re: C++ - Java で OpenCV の Keypoint の vector が受け渡しできない

試してみました。

OpenCVのスマートポインタ Ptr のカウントアップ addref を使用することで、解放を防ぐことができました。

まとめますと、対処方法は以下のようにスマートポインタを使わないか、

コード:

RecognizeKeypoint* rk = new RecognizeKeypoint();
または、以下のようにスマートポインタの参照カウンタをあげておくことでいけました。

コード:

Ptr<RecognizeKeypint> rk = new RecognizeKeypoint();
rk.addref();
h2so5さん、アドバイスいただきありがとうございました。
by まーさ
9年前
フォーラム: C言語何でも質問掲示板
トピック: C++ - Java で OpenCV の Keypoint の vector が受け渡しできない
返信数: 9
閲覧数: 5253

Re: C++ - Java で OpenCV の Keypoint の vector が受け渡しできない

h2so5さん ありがとうございます。 > スマートポインタを使用せずに、 > RecognizeKeypoint* native_keypoints = new RecognizeKeypoint(); > とすれば動作すると思います。 教えていただいた方法で動作しました。とても助かりました。 うまく動いていたコードもスマートポインタを使っています。 http://dixq.net/forum/viewtopic.php?f=3&t=15646#p124449 スマートポインタを使用したとき、参照カウンタを利用することで、使っていない場合と同じように動作させることが可能なのでしょうか?
by まーさ
9年前
フォーラム: C言語何でも質問掲示板
トピック: C++ - Java で OpenCV の Keypoint の vector が受け渡しできない
返信数: 9
閲覧数: 5253

Re: C++ - Java で OpenCV の Keypoint の vector が受け渡しできない

h2so5さん ありがとうございます。 今回の処理の目的は、C++でただ1度ロードする vector<vector<KeyPoint>> を Java から任意のタイミングで使用することです。 ですので、教えていただいたURLの方法と、class を new する方法を試しています。 後者の方で、動作せずに困っています。以下のようにコーディングしました。 class RecognizeKeypoint を定義して、メンバ変数にvector<vector<KeyPoint>>をもつようにしました。 RecognizeKeypoint.cpp #include "RecognizeKeypoint...
by まーさ
9年前
フォーラム: C言語何でも質問掲示板
トピック: C++ - Java で OpenCV の Keypoint の vector が受け渡しできない
返信数: 9
閲覧数: 5253

Re: C++ - Java で OpenCV の Keypoint の vector が受け渡しできない

h2so5さん 重ねて質問なのですが、以下のようにDescriptorMatcher class(OpenCVのクラスです)を利用した場合はポインタの保存と再利用が可能です。 Java_jp_sprix_jni_recognize_LoadDictionary_load(JNIEnv *env, jobject jobj, jstring path) { const char* path_c = env->GetStringUTFChars(path, JNI_FALSE); string output_file = string(path_c); Ptr<DescriptorMatcher>...
by まーさ
9年前
フォーラム: C言語何でも質問掲示板
トピック: C++ - Java で OpenCV の Keypoint の vector が受け渡しできない
返信数: 9
閲覧数: 5253

Re: C++ - Java で OpenCV の Keypoint の vector が受け渡しできない

h2so5さん

> また、keypoints_listはローカル変数なので関数が終了した時点でアドレスは無効になります。
> 以下のサイトを参考にしてみてください。
> http://stackoverflow.com/questions/1081 ... s-over-jni

ありがとうございます、勉強になります。
試してみます。結果がでたら書き込みいたします。
by まーさ
9年前
フォーラム: C言語何でも質問掲示板
トピック: C++ - Java で OpenCV の Keypoint の vector が受け渡しできない
返信数: 9
閲覧数: 5253

C++ - Java で OpenCV の Keypoint の vector が受け渡しできない

Java から C++ のOpenCVを JNI を経由して使っています。 C++側でロードした vector<vector <KeyPoint>> の参照を、Javaで保存し、必要に応じて C++ 側へ渡して vector<vector <KeyPoint>> から KeyPoint を取り出して処理をするプログラムをつくろうとしていますが、vector の参照を使ってうまくデータを再利用できなくて困っています。 ※ KeyPoint は OpenCV の class です。 http://docs.opencv.org/modules/features2d/doc/common_inter...
by まーさ
9年前
フォーラム: C言語何でも質問掲示板
トピック: OpenCVのmake時、OpenMPのpragma omp が -Wunknown となって並列処出来ない
返信数: 2
閲覧数: 2712

Re: OpenCVのmake時、OpenMPのpragma omp が -Wunknown となって並列処出来ない

h2so5 さん、ありがとうございます。 解決いたしました。 原因は、TBB と OpenMP を同時に有効にして OpenCV をビルドすることが出来ないことでした。 TBBをはずすため、cmakeのオプションを以下のように変更しました。 #cmake -DBUILD_DOCS=ON -DBUILD_EXAMPLES=ON -DCMAKE_BUILD_TYPE=RELEASE -DWITH_GTK=ON -DWITH_OPENGL=ON -DWITH_QT=OFF -DINSTALL_C_EXAMPLES=ON -DWITH_OPENCL=OFF -DWITH_CUDA=OFF -DWITH...
by まーさ
9年前
フォーラム: C言語何でも質問掲示板
トピック: OpenCVのmake時、OpenMPのpragma omp が -Wunknown となって並列処出来ない
返信数: 2
閲覧数: 2712

OpenCVのmake時、OpenMPのpragma omp が -Wunknown となって並列処出来ない

OpenCV で OpenMPを使った並列処理がうまく出来ず、困っています。 OpenCVは以下の環境でビルドしています。 CentOS 6.4 x64 OpenCV 2.4.9 OpenCVは、以下のサイトから 2.4.9 for Linux/Mac をダウンロードして解凍したものを使っています。 http://opencv.org/ 手順は以下です。 #cd <opencv2.4.9の展開ディレクトリ> #mkdir release #cd release #cmake -DBUILD_DOCS=ON -DBUILD_EXAMPLES=ON -DCMAKE_BUILD_TYPE=RELEA...
by まーさ
10年前
フォーラム: C言語何でも質問掲示板
トピック: ハフ変換について
返信数: 10
閲覧数: 4224

Re: ハフ変換について

lactation さんが書きました:ある程度点を集めて直線をうかびあがあせるって感じですか?
理解している概念にずれがあるように思いますね。
誤解を恐れずに言えば、点では無く、線を集めます。
可能性のある線を集めて、一番たくさん投票された線(可視化するとしたら、濃く浮かび上がったと言えます)を、直線として検出します。

「可能性のある線」の検出条件は、複数のパラメータで調整します。
このパラメータの意味がわかれば、プログラムの実装は難しくないです。
by まーさ
10年前
フォーラム: C言語何でも質問掲示板
トピック: C# PowerPointの数式ツールの操作が出来ない
返信数: 0
閲覧数: 1817

C# PowerPointの数式ツールの操作が出来ない

C# で Microsoft Office PowerPoint の スライドを操作するプログラムを作成しています。 Presentation オブジェクト から スライドの集合 Slides を取得し、各 Slide オブジェクトに含まれる Shape オブジェクトを操作しています。 しかし、取得した Shape オブジェクトから、TextFrame や Line は判定できたのですが、スライドに含まれるはずの 数式ツールで記述したオブジェクト が 取得できない、もしくは、数式ツールだと判定できません。 コードは以下の様なものです。 COM 参照に Microsoft PowerPoint ...
by まーさ
10年前
フォーラム: C言語何でも質問掲示板
トピック: C# Wordの数式エディタのAlignParagraphCenterが設定出来ない
返信数: 2
閲覧数: 1948

Re: C# Wordの数式エディタのAlignParagraphCenterが設定出来ない

YuOさん

ありがとうございます。うまくいきました。
OMathの親の Justification (行端揃え)をCenterにすることで、数式のエディタを中央に変更できました。
Justification プロパティを知りませんでした。親に設定するんですね、大変勉強になりました。

以下が動作したコードです。

コード:

OMaths maths = document.OMaths;
foreach (OMath math in maths) {
  math.ParentOMath.Justification = WdOMathJc.wdOMathJcCenterGroup;
}
by まーさ
10年前
フォーラム: C言語何でも質問掲示板
トピック: C# Wordの数式エディタのAlignParagraphCenterが設定出来ない
返信数: 2
閲覧数: 1948

C# Wordの数式エディタのAlignParagraphCenterが設定出来ない

Microsoft Office Word の docxファイルを Visual Studio 2012 の Office開発ツール(C#) を使って編集しています。 Wordファイルには、数式エディタを使って記述した数式を記述しており、プログラムで文章の中央に移動したいです。 以下のようにやっていますがうまく中央に変更できません。 using Microsoft.Office.Interop.Word; Application application = new Application(); Documents documents = application.Documents; Docum...
by まーさ
10年前
フォーラム: C言語何でも質問掲示板
トピック: OpenCV java のビルドに失敗する
返信数: 3
閲覧数: 4419

Re: OpenCV java のビルドに失敗する

h2so5さん、ありがとうございます。 cmakeの 2.8.10 へバージョンを上げたところ、うまくいきました。 大変助かりました。 -- OpenCV modules: -- To be built: core imgproc flann highgui features2d calib3d ml video objdetect contrib photo legacy gpu nonfree java python stitching superres ts videostab -- Disabled: world -- Disabled by dependency: - -- Unav...
by まーさ
10年前
フォーラム: C言語何でも質問掲示板
トピック: OpenCV java のビルドに失敗する
返信数: 3
閲覧数: 4419

Re: OpenCV java のビルドに失敗する

書き忘れました。
環境ですが、CentOS 6.3 で、OpenCVは、2.4.6 と 2.4.8 を試しました。
by まーさ
10年前
フォーラム: C言語何でも質問掲示板
トピック: OpenCV java のビルドに失敗する
返信数: 3
閲覧数: 4419

OpenCV java のビルドに失敗する

OpenCV java (OpenCV が提供する OpenCVネイティブコードへの Java インターフェイス)のビルドに失敗してとても困っています。 具体的には、モジュールのビルド対象 (to be built:) に java が含まれず、(Unavailable:)になってしまいます。 ソースから build する方法が、オフィシャルページにも載っていて、手順どおりやってみました。 http://docs.opencv.org/doc/tutorials/introduction/desktop_java/java_dev_intro.html#download 以下の手順です。 # ...
by まーさ
10年前
フォーラム: C言語何でも質問掲示板
トピック: ppm形式(4行目までテキスト、5行目からバイナリ)の画像ファイル読み込みがうまくいきません
返信数: 4
閲覧数: 4005

Re: ppm形式(4行目までテキスト、5行目からバイナリ)の画像ファイル読み込みがうまくいきません

みけCATさん、先ほどいただいたバイナリモードのアドバイスを実践したところ、うまくいきました。
とても助かりました、ありがとうございます。
by まーさ
10年前
フォーラム: C言語何でも質問掲示板
トピック: ppm形式(4行目までテキスト、5行目からバイナリ)の画像ファイル読み込みがうまくいきません
返信数: 4
閲覧数: 4005

Re: ppm形式(4行目までテキスト、5行目からバイナリ)の画像ファイル読み込みがうまくいきません

みけCATさん、ありがとうございます。 バイナリモードのご指摘もいただきありがとうございます。試してみます。 画像のサイズが大きいため、firestorageにアップロードいたしました。 http://xfs.jp/SHE7Se 解凍後、test.ppmが読み込み用画像、test_out.ppmが読み込んだ後、出力したデータです。 出力用コードは以下です。 char name[] = "出力用ファイル名" // 画像用ループ変数 int x,y,col; std::ofstream file; file.open(name, std::ios::out|std::ios::binary|std...
by まーさ
10年前
フォーラム: C言語何でも質問掲示板
トピック: ppm形式(4行目までテキスト、5行目からバイナリ)の画像ファイル読み込みがうまくいきません
返信数: 4
閲覧数: 4005

ppm形式(4行目までテキスト、5行目からバイナリ)の画像ファイル読み込みがうまくいきません

ppm(P6)形式の画像 (4行目までがテキスト、5行目からがバイナリ)の読み込みがうまくいきません。 4行目までの読み込みは、用意した string変数に格納され、cout で出力することで正しいと確認しています。 5行目(以下のコードでは「★うまくいかない部分★」と記載)以降で、ファイルを途中までしか読み取れず困っています。 途中までというのは、以下のように判断しています。 ・画像格納配列image をファイルに出力すると、途中までになってします。 ・画像格納配列image への読み込んだ unsined char値 を確認すると、途中から 全て0 になっている。 関係があるかわからない...

詳細検索ページへ移動する