問題タブ [halcon]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
490 参照

halcon - 画像取得 GUI とエクスポートされた HDevelop コードを使用した競合するパフォーマンス

HDevelop 内の画像取得 GUI と一緒に使用すると、適切なパフォーマンスが得られるカメラとフラッシュ システムのセットアップがあります。つまり、フラッシュを 1 回トリガーして画像をキャプチャします。[コード生成] タブに移動して同じコードをエクスポートすると、実行時に別のパフォーマンスが得られます。つまり、フラッシュを 2 回トリガーしてキャプチャした画像です。問題を特定できませんでした。

以下は、上記の [コード生成] タブの GUI を使用してエクスポートされたコードです。

0 投票する
2 に答える
1262 参照

halcon - Halcon FindNccModel が C# でメモリ リークを引き起こす

C# で Halcon 13 関数 FindNccModel を使用すると、次のエラーが発生します: HALCON エラー #6001: 演算子 find_ncc_model で使用可能なメモリが不足しています

関数自体は while ループ内で無限に実行できますが、プログラムと組み合わせるとメモリ例外が発生します。一方、プログラム自体は、この機能がなくても無限に実行できます。プログラムが通常の 1.1 Gb のメモリに到達する前にエラーが発生することも興味深い点です。これは、メモリ リークがあることを意味します。

Halcon のドキュメントにこの問題への言及はなく、最新の Halcon 13 バージョンにアップグレードするか、Halcon XL を使用しても解決しませんでした。この問題の原因を知っている人はいますか?

0 投票する
1 に答える
1569 参照

halcon - HALCON を使用した画像取得デバイスへの接続に関する問題

私のセットアップには、HDevelop がインストールされているコンピューターに直接接続された POE カメラが含まれています。ここ数日、HDevelop を使用して最初にカメラに接続しようとすると失敗するという問題が発生しています。

  1. Image Acquisition GUI から Connect を使用すると、「HALCON ERROR. Image Acquisition: device cannot be initialized」というエラーが表示されます。

  2. プログラム コンソールから open_framegrabber() メソッドを使用すると、同じエラーが発生し、HALCON エラー コード:5312 が追加されます。

このエラーが発生した後、接続を再試行すると成功します。これは私が現在持っている回避策ですが、非常に頻繁に繰り返され、この問題の原因がわからないため、面倒です. コマンド プロンプトからカメラに ping を実行してみましたが、ping の損失は見られませんでした。また、VIMBA ビューアーのカメラを使用すると、このような接続の問題は発生しません。

これは、そのような質問をするべきサポート サイトではないことは承知していますが、誰かがこれを解決するための情報を提供してくれれば、非常に役に立ちます。

よろしく、

サンジェイ

0 投票する
1 に答える
106 参照

c# - DLL のファイルシステム アクセス (読み取りのみ) をメモリ マップされたファイル/ディレクトリにリダイレクトする方法はありますか?

まず、おそらくこれは XY 問題です。私が実際に解決しようとしているのは、ソース コードのスパイ行為に対する貧乏人の保護スキームです。C# プロジェクトで HALCON (画像処理ライブラリ) を使用しています。問題は、HALCON パーツがプレーン ソースとして保存され、プログラムの開始時にソースがどこにあるかを伝えたときにのみ、DLL によってコンパイル/収集されることです。私の意図は、ソースをディスク上に暗号化された形式で保持し、DLL を初期化する前に、プログラムの開始時にメモリの一部にロード/復号化することです。アイデアは、ファイル システム (USB スティックを差し込んでコピーする) を介したソースへのアクセスを拒否することです。これはかなり弱い形式の保護であることを認識しています。明白で優れた方法が欠けている場合は、報告してください。

私は RAM ディスクを調べてきましたが、アプリケーションが 24 時間年中無休であるため、これらは保護には役立ちません。メモリベースのファイルは、アプリケーションが閉じると消えてしまい、外界から多かれ少なかれ見えないようにする必要があるため、理想的ですが、代わりに DLL に単純な DOS ファイル パス (例: "C:/HALCON/ourproject") を指定する必要があります。ファイル ストリーム/記述子の

編集: HDevelop-Interface を使用しています。つまり、HALCON プロシージャは、プロシージャの HALCON インタープリターを呼び出す HDevProcedure オブジェクトを介して呼び出されます。