目次
[OpenCV 入門チュートリアル パート 2] 簡単な概要: OpenCV 2.4.8 または OpenCV 2.4.9 (転送)、opencv2.4.9 のコンポーネント構造の完全な分析
ホームページ バックエンド開発 PHPチュートリアル 【OpenCV入門チュートリアル2】小さな山を一目見る:OpenCV 2.4.8またはOpenCV 2.4.9のコンポーネント構造の完全解析(転送)、opencv2.4.9_PHPチュートリアル

【OpenCV入門チュートリアル2】小さな山を一目見る:OpenCV 2.4.8またはOpenCV 2.4.9のコンポーネント構造の完全解析(転送)、opencv2.4.9_PHPチュートリアル

Jul 12, 2016 am 09:03 AM
opencv

[OpenCV 入門チュートリアル パート 2] 簡単な概要: OpenCV 2.4.8 または OpenCV 2.4.9 (転送)、opencv2.4.9 のコンポーネント構造の完全な分析

<p>本系列文章由zhmxy555(毛星云)编写,转载请注明出处。  </p>
<p><span><span> 文章链接: http://blog.csdn.net/poem_qianmo/article/details/19925819</span></span></p>
<p> </p>
<p><span><span><span> 作者:毛星云(浅墨)    邮箱: happylifemxy@163.com </span></span></span></p>
<p><span><span><span> 写作当前博文时配套使用OpenCV版本:2.4.8</span></span></span></p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p>之前啃了不少OpenCV的官方文档,发现如果了解了一些OpenCV整体的模块架构后,再重点学习自己感兴趣的部分的话,就会有一览众山小的感觉,于是,就决定写出这篇文章,作为启程OpenCV系列博文的第二篇。</p>
<p> </p>
<p>至于OpenCV组件结构的研究方法,我们不妨管中窥豹,通过opencv安装路径下include目录里面头文件的分类存放,来一窥OpenCV这些年迅猛发展起来的庞杂组件架构。</p>
<p>我们进入到D:\ProgramFiles\opencv\build\include目录,可以看到有opencv和opencv2这两个文件夹。显然,opencv这个文件夹里面包含着旧版的头文件。而opencv2这个文件夹里面包含着具有时代意义的新版OpenCV2系列的头文件。</p>
<p> </p>
<p> <img src="/static/imghw/default1.png"  data-src="http://img.blog.csdn.net/20140225181139578?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcG9lbV9xaWFubW8=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast"  class="lazy" alt="" /></p>
<p>在opencv这个文件夹里面,也就是D:\Program Files\opencv\build\include\opencv目录下,可以看到如下的各种头文件。这里面大概就是opencv 1.0最核心的,而且保留下来的内容的头文件,可以把它们整体理解为一个组件。</p>
<p> </p>
<p> <img src="/static/imghw/default1.png"  data-src="http://img.blog.csdn.net/20140225181220281?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcG9lbV9xaWFubW8=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast"  class="lazy" alt="" data-pinit="registered" /></p>
<p> </p>
<p> 再来看看我们重点关注的opencv2这边,在D:\ProgramFiles\opencv\build\include\opencv2目录下,我们可以看到这些文件夹:</p>
<p><img src="/static/imghw/default1.png"  data-src="http://img.blog.csdn.net/20140225181302390?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcG9lbV9xaWFubW8=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast"  class="lazy" alt="" data-pinit="registered" /></p>
<p> </p>
<p> </p>
<p> </p>
<p>我们灵机一动,发现下面有个叫opencv_modules.hpp的hpp文件,一看就知道里面存放的是opencv2中的新模块构造相关的说明代码,打开一看,果不其然,定义的是OpenCV2所有组件的宏:</p>
<p> </p>


<strong>[cpp]</strong> view plaincopyprint?<img src="/static/imghw/default1.png"  data-src="https://code.csdn.net/assets/CODE_ico.png"  class="lazy" alt="【OpenCV入門チュートリアル2】小さな山を一目見る:OpenCV 2.4.8またはOpenCV 2.4.9のコンポーネント構造の完全解析(転送)、opencv2.4.9_PHPチュートリアル"    style="max-width:90%"  style="max-width:90%" /><img src="/static/imghw/default1.png"  data-src="https://code.csdn.net/assets/ico_fork.svg"  class="lazy" alt="【OpenCV入門チュートリアル2】小さな山を一目見る:OpenCV 2.4.8またはOpenCV 2.4.9のコンポーネント構造の完全解析(転送)、opencv2.4.9_PHPチュートリアル"    style="max-width:90%"  style="max-width:90%" />
 


<ol class="dp-cpp" start="1">
<li class="alt"><span class="comment">/* </span></li>
<li><span class="comment"> *     ** File generated automatically, do not modify ** </span></li>
<li class="alt"><span class="comment"> * </span></li>
<li><span class="comment"> *This file defines the list of modules available in current build configuration </span></li>
<li class="alt"><span class="comment"> * </span></li>
<li><span class="comment"> * </span></li>
<li class="alt"><span class="comment">*/  </span></li>
<li>   </li>
<li class="alt"><span class="preprocessor">#define HAVE_OPENCV_CALIB3D  </span></li>
<li><span class="preprocessor">#define HAVE_OPENCV_CONTRIB  </span></li>
<li class="alt"><span class="preprocessor">#define HAVE_OPENCV_CORE  </span></li>
<li><span class="preprocessor">#define HAVE_OPENCV_FEATURES2D  </span></li>
<li class="alt"><span class="preprocessor">#define HAVE_OPENCV_FLANN  </span></li>
<li><span class="preprocessor">#define HAVE_OPENCV_GPU  </span></li>
<li class="alt"><span class="preprocessor">#define HAVE_OPENCV_HIGHGUI  </span></li>
<li><span class="preprocessor">#define HAVE_OPENCV_IMGPROC  </span></li>
<li class="alt"><span class="preprocessor">#define HAVE_OPENCV_LEGACY  </span></li>
<li><span class="preprocessor">#define HAVE_OPENCV_ML  </span></li>
<li class="alt"><span class="preprocessor">#define HAVE_OPENCV_NONFREE  </span></li>
<li><span class="preprocessor">#define HAVE_OPENCV_OBJDETECT  </span></li>
<li class="alt"><span class="preprocessor">#define HAVE_OPENCV_OCL  </span></li>
<li><span class="preprocessor">#define HAVE_OPENCV_PHOTO  </span></li>
<li class="alt"><span class="preprocessor">#define HAVE_OPENCV_STITCHING  </span></li>
<li><span class="preprocessor">#define HAVE_OPENCV_SUPERRES  </span></li>
<li class="alt"><span class="preprocessor">#define HAVE_OPENCV_TS  </span></li>
<li><span class="preprocessor">#define HAVE_OPENCV_VIDEO  </span></li>
<li class="alt"><span class="preprocessor">#define HAVE_OPENCV_VIDEOSTAB  </span></li>
</ol>
<p> </p>
<p> </p>
<p>OK,就不多客套了,下面就是OpenCV的所有模块介绍,按照顺序来:</p>
<p> </p>
<p>【calib3d】&mdash;&mdash;其实就是就是Calibration(校准)加3D这两个词的组合缩写。这个模块主要是相机校准和三维重建相关的内容。基本的多视角几何算法,单个立体摄像头标定,物体姿态估计,立体相似性算法,3D信息的重建等等。</p>
<p> </p>
<p>【contrib】&mdash;&mdash;也就是Contributed/Experimental Stuf的缩写, 该模块包含了一些最近添加的不太稳定的可选功能,不用去多管。2.4.8里的这个模块有新型人脸识别,立体匹配,人工视网膜模型等技术。</p>
<p> </p>
<p>【core】&mdash;&mdash;核心功能模块,包含如下内容:</p>
ログイン後にコピー
リーリー リーリー リーリー リーリー リーリー リーリー リーリー リーリー リーリー リーリー リーリー リーリー リーリー リーリー リーリー れーれー

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/1080763.html技術記事 [OpenCV 入門チュートリアル 2] 小さな山を一目見る: OpenCV 2.4.8 または OpenCV 2.4.9 (翻訳)、opencv2.4.9 のコンポーネント構造の完全な分析 この一連の記事は zhmxy555 (Mao Xingyun) によって書かれています。注...
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

pip パッケージ マネージャーを使用して OpenCV スタディ ガイドをすばやくインストールする pip パッケージ マネージャーを使用して OpenCV スタディ ガイドをすばやくインストールする Jan 18, 2024 am 09:55 AM

pip コマンドを使用すると、特定のコード サンプルが必要な OpenCV チュートリアルを簡単にインストールできます。OpenCV (OpenSource Computer Vision Library) は、オープン ソースのコンピュータ ビジョン ライブラリです。これには、開発者がイメージを迅速に構築するのに役立つ多数のコンピュータ ビジョン アルゴリズムと関数が含まれていますおよびビデオ処理関連のアプリケーション。 OpenCV を使用する前に、まず OpenCV をインストールする必要があります。幸いなことに、Python にはサードパーティのライブラリを管理するための強力なツール pip が用意されています。

OpenCV インストール チュートリアル: PyCharm ユーザー必読 OpenCV インストール チュートリアル: PyCharm ユーザー必読 Feb 22, 2024 pm 09:21 PM

OpenCV は、コンピューター ビジョンおよび画像処理用のオープン ソース ライブラリであり、機械学習、画像認識、ビデオ処理などの分野で広く使用されています。 OpenCV を使用して開発する場合、プログラムのデバッグと実行を改善するために、多くの開発者は強力な Python 統合開発環境である PyCharm の使用を選択します。この記事では、PyCharm ユーザーに OpenCV のインストール チュートリアルと具体的なコード例を提供します。ステップ 1: Python をインストールする まず、Python がインストールされていることを確認します。

Python OpenCVイメージピラミッドの例の分析 Python OpenCVイメージピラミッドの例の分析 May 11, 2023 pm 08:40 PM

1. 画像ピラミッドの理論的基礎 画像ピラミッドは画像のマルチスケール表現の一種であり、複数の解像度の画像を説明するのに効果的かつ概念的に単純な構造です。画像ピラミッドは、同じ元の画像から派生した、ピラミッド状に配置された、徐々に解像度が低くなる画像のコレクションです。ラダーダウンサンプリングにより取得され、一定の終了条件に達するまでサンプリングは停止されません。画像をレイヤーごとにピラミッド状に比較します。レベルが高くなるほど、画像は小さくなり、解像度は低くなります。では、なぜ画像ピラミッドを作成するのでしょうか?これは、ピクセルのサイズを変更してもその特性が変わらない場合があるためです。たとえば、1,000 万ピクセルの写真を見せれば、その中に人がいることがわかります。10 万ピクセルの写真を見せれば、その中に人がいることがわかります。 、その中に人がいることもわかります。しかし計画に反して

Python+OpenCVで仮想四角形をドラッグした効果を実現する方法 Python+OpenCVで仮想四角形をドラッグした効果を実現する方法 May 15, 2023 pm 07:22 PM

1. プロジェクト エフェクト 2. コア プロセス 1. openCV はビデオ ストリームを読み取り、画像の各フレームに四角形を描画します。 2. mediapipe を使用して、指のキー ポイントの座標を取得します。 3. 指の座標位置と長方形の座標位置に基づいて、指の先端が長方形上にあるかどうかを判断し、長方形上にある場合には、長方形は指の動きに追従します。 3. コード処理環境の準備: python:3.8.8opencv:4.2.0.32mediapipe:0.8.10.1 注: 1. opencv のバージョンが高すぎたり低すぎたりすると、カメラが開けないなどの問題が発生する可能性があります。 Python のバージョンは、opencv のオプションのバージョンに影響します。 2. pipinstallmediapipe は op を引き起こす可能性があります

Javaを使用してOpenCVで矢印付きの線を描くにはどうすればよいですか? Javaを使用してOpenCVで矢印付きの線を描くにはどうすればよいですか? Aug 20, 2023 pm 02:41 PM

JavaOpenCV ライブラリの org.opencv.imgproc パッケージには、入力画像を処理するためのさまざまなメソッドを提供する Imgproc というクラスが含まれています。画像上に幾何学的形状を描画するための一連のメソッドを提供します。矢印付きの線を描画するには、このクラスの arrowedLine() メソッドを呼び出す必要があります。このメソッドは次のパラメータを受け入れます: 線が描画されるイメージを表す Mat オブジェクト。線間の 2 点を表す Point オブジェクト。線の色を表す Scalar オブジェクト。 (BGR) 線の太さを表す整数 (デフォルト: 1)。例 importorg.opencv.core.Core;importo

PHPとOpenCVライブラリを使用してビデオ処理を実装するにはどうすればよいですか? PHPとOpenCVライブラリを使用してビデオ処理を実装するにはどうすればよいですか? Jul 17, 2023 pm 09:13 PM

PHPとOpenCVライブラリを使用してビデオ処理を実装するにはどうすればよいですか?要約: ビデオ処理は、現代の科学技術応用において重要な技術となっています。この記事では、PHP プログラミング言語を OpenCV ライブラリと組み合わせて使用​​して、いくつかの基本的なビデオ処理機能を実装する方法を紹介し、対応するコード例を添付します。キーワード: PHP、OpenCV、ビデオ処理、コード例 はじめに: インターネットの発達とスマートフォンの普及により、ビデオコンテンツは人々の生活に欠かせないものになりました。ただし、ビデオ編集を実現するには、

Python では、OpenCV ライブラリのメソッドを使用して画像をセグメント化して抽出できます。 Python では、OpenCV ライブラリのメソッドを使用して画像をセグメント化して抽出できます。 May 08, 2023 pm 10:55 PM

画像のセグメント化と抽出: 前景オブジェクトは、画像内のターゲット画像としてセグメント化または抽出されます。背景自体には興味がなく、分水界アルゴリズムと GrabCut アルゴリズムによって画像がセグメント化されて抽出されます。画像のセグメンテーションと抽出を実現するために分水界アルゴリズムを使用します。分水界アルゴリズムは、画像を地理的地形表面と鮮明に比較して、画像のセグメンテーションを実現します。このアルゴリズムは非常に効果的です。アルゴリズム原理 あらゆるグレースケール画像を地理的地形表面と見なすことができ、グレースケール値が高い領域は山の頂上として、グレースケール値が低い領域は谷として見ることができます。左側の画像は元の画像で、右側の画像はそれに対応する「地形面」です。このプロセスにより、画像が集水域と流域線という 2 つの異なるセットに分割されます。私たちが建設したダムは分水嶺、つまり本来のイメージです

初心者は読んでください: PyCharm に OpenCV をインストールする方法に関する詳細なチュートリアル 初心者は読んでください: PyCharm に OpenCV をインストールする方法に関する詳細なチュートリアル Feb 26, 2024 pm 03:24 PM

PyCharm は、JetBrains によって開発された強力な Python 統合開発環境 (IDE) であり、Python 開発者がコードを作成し、プログラムをデバッグし、プロジェクトを管理するのに役立つ豊富な機能とツールを提供します。 PyCharm で強力なコンピューター ビジョン ライブラリである OpenCV を使用すると、画像処理、ビデオ処理、その他のタスクを簡単に実行できます。この記事では、PyCharm に OpenCV をインストールして構成する手順を詳しく説明し、具体的なコード例を示します。 1.あん

See all articles