名前空間 cv と関数の命名 ================================== .. highlight:: cpp 新しく導入されたクラスおよび関数は, ``cv`` 名前空間内に存在します.よって,ユーザのコードからこの機能を利用するには,指定子 ``cv::`` か,指示文 ``"using namespace cv;"`` を利用してください: .. code-block:: c #include "cv.h" ... cv::Mat H = cv::findHomography(points1, points2, cv::RANSAC, 5); ... .. あるいは .. code-block:: c #include "cv.h" using namespace cv; ... Mat H = findHomography(points1, points2, RANSAC, 5 ); ... .. 現在あるいは将来の OpenCV において, external name が STL やその他のライブラリと衝突する可能性がありますが, その場合は,名前の衝突を解決するために名前空間指定子を明示してください: .. code-block:: c Mat a(100, 100, CV_32F); randu(a, Scalar::all(1), Scalar::all(std::rand() cv::log(a, a); a /= std::log(2.); .. OpenCV 1.x のほとんどの C の関数や構造体に直接相当するものが,新しい C++ インタフェースにも存在します.通常,その名前は 接頭語の ``cv`` や ``Cv`` を削除し,最初の文字を小文字に変換したものになります(ただし,Canny や Sobel などの固有名は除きます).新しい形式に相当するものが存在しない場合,この章の最初で見たように,新しい構造体(クラス)に古い関数を適用できる可能性があります.