画像の粒子数を数えたいと思います。 ImageJが私にはちょうどhttp://imagej.net/Particle_Analysisが必要であることがわかりましたが、それはJavaであり、統合する必要がある機能の1つで、JavaプログラムをC++アプリケーションから呼び出すことができません。 私はこれを実装するC++ライブラリを探していますが、包括的なアルゴリズムは歓迎されるものではありません。 すべて最高C++画像処理、粒子のカウント
答えて
openCV http://opencv.org/をご覧ください。彼らには、コンピュータビジョンに関連する機能やアルゴリズムが豊富にあります。画像内の粒子の形状や構造によっては、SimpleBlobDetector()が有用かもしれません。ここに良いチュートリアルがあります:https://www.learnopencv.com/blob-detection-using-opencv-python-c/
代わりに、独自のアルゴリズムを実装できますか?ガウシアンカーネルのLaplacianを検索してください。パーティクルが不規則な形状の場合、パーティクルがより難しくなり、しきい値処理と制御が必要になることがあります。
フィードバックに感謝します。はい、画像は宇宙のイメージです。私はOpenCVについて考えてみるたびに、そのサイズについて考えると、何年もかけて巨大になります。 SimpleBlobDetectorは私が探しているものに見えます、ありがとうございました。もちろん元の画像にはクリーンアップが必要です(不規則な背景を取り除き、コントラストを落とすなど)。 –
だと思います。CImgは、あなたにとって最適なソリューションです。それはhereです。これは単一のC++ヘッダーファイルです - ライブラリやリンクするものはなく、あらゆるプラットフォーム(Linux、OS X、Windows)上で動作します。
必要な機能はlabel()
です。ここでは簡単な例です:私は、コマンドラインで次のようにImageMagickをでテスト画像を作っ
#include <iostream> #include "CImg.h" using namespace std; using namespace cimg_library; int main(int argc, char** const argv) { CImg<int> img("input.png"); img.label(0,0); img.save_png("result.png"); }
: :
convert -size 1000x1000 xc:black -fill white \
-draw "rectangle 10,10 50,50" \
-draw "rectangle 100,200 300,400" \
-draw "rectangle 800,25 900,900" input.png
それはこのようになります次に、プログラムを実行すると、各ブロブ(すなわち、四角形)に、増加する数、つまり、それぞれが少し明るくなります最後はハーン。
- 1. Objective Cの画像処理
- 2. C++での画像処理
- 3. キャンバス粒子の背景画像
- 4. PixiJS粒子コンテナのオーバーレイ画像とテキスト?
- 5. C++画像処理ループ
- 6. C#3D画像処理
- 7. Objective-C - 画像処理 - ヒーリングスポットブラシ
- 8. C#での画像/ビデオストリームの処理
- 9. C#での非同期画像処理
- 10. 画像処理用のMATLABとVisual C++
- 11. WindowsフォームアプリケーションのC#画像処理
- 12. C#/ WPF画像処理の問題
- 13. 画像処理
- 14. C++画像処理チュートリアルwithuotサードパーティライブラリ
- 15. RaspicamとC++による画像処理
- 16. カメラ画像処理
- 17. 画像処理ライブラリ
- 18. Matlab画像処理
- 19. 画像処理Iphone
- 20. カフス画像処理
- 21. ニューラルネットワーク画像処理
- 22. 画像処理 - スムージング
- 23. カスタム画像処理
- 24. Watir画像処理
- 25. Matlab '画像処理'
- 26. ウェブアプリケーション画像処理
- 27. スウィフト画像処理
- 28. JPG画像処理
- 29. Python ..画像処理
- 30. OpenCV画像処理 - 画像フィルタ
あなたの問題を整理、私の答え、または他のものをしましたか?もしそうなら、それをあなたの答えとして受け入れることを検討してください - 投票数の横にある緑色のチェックマーク/チェックマークをクリックしてください。そうでない場合は、私が、または他の誰かがあなたをさらに助けることができるように、何がうまくいかないと言ってください。ありがとう。 http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work/5235#5235 –