OpenCV 5.0.0
Open Source Computer Vision
読み込み中...
検索中...
見つかりません
🤖 AIによる機械翻訳(非公式) — これは OpenCV 5.0.0 公式リファレンス(英語)を AI (Claude) で自動翻訳したものです。訳に誤りを含む場合があります。正確な情報は 公式英語版(原文) を参照してください。

詳細説明

列挙型

enum  cv::cann::InterpolationFlags {
  cv::cann::INTER_NEAREST = 0 ,
  cv::cann::INTER_LINEAR = 1 ,
  cv::cann::INTER_CUBIC = 2 ,
  cv::cann::INTER_AREA = 3 ,
  cv::cann::INTER_MAX = 7
}
 補間アルゴリズム 続きを読む...
 

関数

void cv::cann::copyMakeBorder (const AscendMat &src, AscendMat &dst, int top, int bottom, int left, int right, int borderType, const Scalar &value=Scalar())
 
void cv::cann::copyMakeBorder (const InputArray src, OutputArray dst, int top, int bottom, int left, int right, int borderType, const Scalar &value=Scalar())
 入力画像のコピーの周囲に境界を形成し、指定された境界タイプで埋める。
 
AscendMat cv::cann::crop (const AscendMat &src, const Rect &rect, AscendStream &stream=AscendStream::Null())
 
AscendMat cv::cann::crop (InputArray src, const Rect &rect, AscendStream &stream=AscendStream::Null())
 2D配列を切り出す。この関数は与えられた cv::Rect によって行列を切り出す。出力行列は入力行列と同じビット深度でなければならず、サイズは与えられたrectのサイズで指定される。
 
void cv::cann::cropResize (const AscendMat &src, AscendMat &dst, const Rect &rect, Size dsize, double fx, double fy, int interpolation)
 
void cv::cann::cropResize (const InputArray src, OutputArray dst, const Rect &rect, Size dsize, double fx, double fy, int interpolation)
 大きな画像からサブ画像を切り出し、特定のサイズにリサイズする。
 
void cv::cann::cropResizeMakeBorder (const AscendMat &src, AscendMat &dst, const Rect &rect, Size dsize, double fx, double fy, int interpolation, int top, int left, const int borderType, Scalar value=Scalar())
 
void cv::cann::cropResizeMakeBorder (const InputArray src, OutputArray dst, const Rect &rect, Size dsize, double fx, double fy, int interpolation, int top, int left, const int borderType, Scalar value=Scalar())
 大きな画像からサブ画像を切り出し、特定のサイズにリサイズして、上/左の境界を形成し、指定された境界タイプで埋める。
 
void cv::cann::flip (const AscendMat &src, AscendMat &dst, int flipCode, AscendStream &stream=AscendStream::Null())
 
void cv::cann::flip (InputArray src, OutputArray dst, int flipCode, AscendStream &stream=AscendStream::Null())
 2D行列を垂直軸、水平軸、またはその両方を中心に反転する。
 
void cv::cann::merge (const AscendMat *src, size_t n, AscendMat &dst, AscendStream &stream=AscendStream::Null())
 複数のシングルチャンネル行列から多チャンネル行列を構成する。
 
void cv::cann::merge (const AscendMat *src, size_t n, OutputArray &dst, AscendStream &stream=AscendStream::Null())
 
void cv::cann::merge (const std::vector< AscendMat > &src, AscendMat &dst, AscendStream &stream=AscendStream::Null())
 
void cv::cann::merge (const std::vector< AscendMat > &src, OutputArray &dst, AscendStream &stream=AscendStream::Null())
 
void cv::cann::resize (const AscendMat &src, AscendMat &dst, Size dsize, double fx, double fy, int interpolation, AscendStream &stream=AscendStream::Null())
 
void cv::cann::resize (InputArray src, OutputArray dst, Size dsize, double fx, double fy, int interpolation, AscendStream &stream=AscendStream::Null())
 画像srcを指定されたサイズに縮小または拡大する。
 
void cv::cann::rotate (const AscendMat &src, AscendMat &dst, int rotateMode, AscendStream &stream=AscendStream::Null())
 
void cv::cann::rotate (InputArray src, OutputArray dst, int rotateCode, AscendStream &stream=AscendStream::Null())
 2次元配列を90度単位で回転する。関数 cv::rotate は、次の3つの方法のいずれかで配列を回転する。時計回りに90度回転(rotateCode = ROTATE_90_CLOCKWISE)。時計回りに180度回転(rotateCode = ROTATE_180)。時計回りに270度回転(rotateCode = ROTATE_90_COUNTERCLOCKWISE)。
 
void cv::cann::split (const AscendMat &src, AscendMat *dst, AscendStream &stream=AscendStream::Null())
 マルチチャンネル行列の各プレーンを配列にコピーする。
 
void cv::cann::split (const AscendMat &src, std::vector< AscendMat > &dst, AscendStream &stream=AscendStream::Null())
 
void cv::cann::split (const InputArray src, AscendMat *dst, AscendStream &stream=AscendStream::Null())
 
void cv::cann::split (const InputArray src, std::vector< AscendMat > &dst, AscendStream &stream=AscendStream::Null())
 
void cv::cann::transpose (const AscendMat &src, AscendMat &dst, AscendStream &stream=AscendStream::Null())
 
void cv::cann::transpose (InputArray src, OutputArray dst, AscendStream &stream=AscendStream::Null())
 行列を転置する。
 

列挙型詳解

◆ InterpolationFlags

#include <opencv2/cann_interface.hpp>

補間アルゴリズム

列挙値
INTER_NEAREST 

最近傍補間

INTER_LINEAR 

双線形補間

INTER_CUBIC 

バイキュービック補間

INTER_AREA 

ピクセル領域の関係を用いたリサンプリング。モアレのない結果が得られるため、画像の縮小に適した方法である。ただし画像を拡大する場合は INTER_NEAREST 法と同様の結果になる。

INTER_MAX 

補間コード用のマスク

関数詳解

◆ copyMakeBorder() [1/2]

void cv::cann::copyMakeBorder ( const AscendMat & src,
AscendMat & dst,
int top,
int bottom,
int left,
int right,
int borderType,
const Scalar & value = Scalar() )

#include <opencv2/cann_interface.hpp>

これは利便性のために提供されているオーバーロードされたメンバ関数である。上記の関数とは、受け取る引数のみが異なる。

◆ copyMakeBorder() [2/2]

void cv::cann::copyMakeBorder ( const InputArray src,
OutputArray dst,
int top,
int bottom,
int left,
int right,
int borderType,
const Scalar & value = Scalar() )

#include <opencv2/cann_interface.hpp>

入力画像のコピーの周囲に境界を作成し、指定した bordertype で埋める。

引数
src入力画像。
dstsrc と同じ型で、サイズが Size(src.cols+left+right, src.rows+top+bottom) の出力画像。
top上側パディングのピクセル数
bottom下側パディングのピクセル数
left左側パディングのピクセル数
right右側パディングのピクセル数。元画像の矩形から各方向に何ピクセル外挿するかを指定する引数。例えば top=1, bottom=1, left=1, right=1 は、幅1ピクセルの境界を構築する必要があることを意味する。
borderType境界の種類。cv::BorderTypes::BORDER_CONSTANTcv::BorderTypes::BORDER_REPLICATE のみがサポートされている。
valueborderType==BORDER_CONSTANT の場合の境界の BGR または YUV 値。
覚え書き
入力画像は uint8 でなければならず、GRAY および BGR 画像のみがサポートされている。入力画像と出力画像の解像度は [10*6, 4096*4096] の範囲内でなければならない。
サポートされるデバイスは次のものに限られる: Atlas Inference Series products、Atlas 200/500 A2 Inference products、Atlas A2 Training Series products/Atlas 300I A2 Inference products。
参照
cv::copyMakeBorder, cv::borderInterpolate

◆ crop() [1/2]

AscendMat cv::cann::crop ( const AscendMat & src,
const Rect & rect,
AscendStream & stream = AscendStream::Null() )

#include <opencv2/cann_interface.hpp>

これは利便性のために提供されているオーバーロードされたメンバ関数である。上記の関数とは、受け取る引数のみが異なる。

◆ crop() [2/2]

AscendMat cv::cann::crop ( InputArray src,
const Rect & rect,
AscendStream & stream = AscendStream::Null() )

#include <opencv2/cann_interface.hpp>

2D配列を切り抜く。この関数は指定された cv::Rect によって行列を切り抜く。出力行列は入力と同じビット深度でなければならず、サイズは指定された rect のサイズで決まる。

引数
src入力配列。
rect配列を切り抜く矩形
stream非同期版のための AscendStream
参照
cv::gapi::crop

◆ cropResize() [1/2]

void cv::cann::cropResize ( const AscendMat & src,
AscendMat & dst,
const Rect & rect,
Size dsize,
double fx,
double fy,
int interpolation )

#include <opencv2/cann_interface.hpp>

これは利便性のために提供されているオーバーロードされたメンバ関数である。上記の関数とは、受け取る引数のみが異なる。

◆ cropResize() [2/2]

void cv::cann::cropResize ( const InputArray src,
OutputArray dst,
const Rect & rect,
Size dsize,
double fx,
double fy,
int interpolation )

#include <opencv2/cann_interface.hpp>

大きな画像からサブ画像を切り抜き、特定のサイズにリサイズする。

引数
src入力配列。
dst出力配列。サイズは dsize(非ゼロの場合)、または src.size()、fx、fy から計算されたサイズになる。dst の型は src と同じ。
rect配列を切り抜く矩形
dsize出力画像のサイズ。ゼロの場合は cv::resize と同様に計算される。
fx水平軸方向のスケール係数。0 の場合は次のように計算される。

\[(𝚍𝚘𝚞𝚋𝚕𝚎)𝚍𝚜𝚒𝚣𝚎.𝚠𝚒𝚍𝚝𝚑/𝚜𝚛𝚌.𝚌𝚘𝚕𝚜\]

fy垂直軸方向のスケール係数。0 の場合は次のように計算される。

\[(𝚍𝚘𝚞𝚋𝚕𝚎)𝚍𝚜𝚒𝚣𝚎.𝚑𝚎𝚒𝚐𝚑𝚝/𝚜𝚛𝚌.𝚛𝚘𝚠𝚜\]

interpolation補間方法。ここでは INTER_NEAREST と INTER_LINEAR のみをサポートする。(cv.cann.InterpolationFlags を参照)
覚え書き
入力画像は uint8 でなければならず、GRAY および BGR 画像のみがサポートされている。入力画像と出力画像の解像度は [10*6, 4096*4096] の範囲内でなければならない。
サポートされるデバイスは次のものに限られる: Atlas Inference Series products、Atlas 200/500 A2 Inference products、Atlas A2 Training Series products/Atlas 300I A2 Inference products。
参照
cv::gapi::crop, cv::resize, cv::cann::resize

◆ cropResizeMakeBorder() [1/2]

void cv::cann::cropResizeMakeBorder ( const AscendMat & src,
AscendMat & dst,
const Rect & rect,
Size dsize,
double fx,
double fy,
int interpolation,
int top,
int left,
const int borderType,
Scalar value = Scalar() )

#include <opencv2/cann_interface.hpp>

これは利便性のために提供されているオーバーロードされたメンバ関数である。上記の関数とは、受け取る引数のみが異なる。

◆ cropResizeMakeBorder() [2/2]

void cv::cann::cropResizeMakeBorder ( const InputArray src,
OutputArray dst,
const Rect & rect,
Size dsize,
double fx,
double fy,
int interpolation,
int top,
int left,
const int borderType,
Scalar value = Scalar() )

#include <opencv2/cann_interface.hpp>

大きな画像からサブ画像を切り抜き、特定のサイズにリサイズし、上側/左側の境界を作成して指定した bordertype で埋める。

引数
src入力配列。
dst出力配列。サイズは Size(dsize.height + top, dsize.width + left)。
rect配列を切り抜く矩形
dsizeリサイズサイズ。
fx水平軸方向のスケール係数。
fy垂直軸方向のスケール係数。
interpolation補間方法。INTER_NEAREST と INTER_LINEAR のみがサポートされている。(cv.cann.InterpolationFlags を参照)
borderType境界の外挿方法。cv::BorderTypes::BORDER_CONSTANTcv::BorderTypes::BORDER_REPLICATE のみがサポートされている。
valueborderType==BORDER_CONSTANT の場合の境界の BGR または YUV 値。
top上側パディングのピクセル数
left左側パディングのピクセル数
覚え書き
入力画像は uint8 でなければならず、GRAY および BGR 画像のみがサポートされている。入力画像と出力画像の解像度は [10*6, 4096*4096] の範囲内でなければならない。
サポートされるデバイスは次のものに限られる: Atlas Inference Series products、Atlas 200/500 A2 Inference products、Atlas A2 Training Series products/Atlas 300I A2 Inference products。
参照
cv::gapi::crop, cv::resize, cv::cann::resize, cv::BorderTypes

◆ flip() [1/2]

void cv::cann::flip ( const AscendMat & src,
AscendMat & dst,
int flipCode,
AscendStream & stream = AscendStream::Null() )

#include <opencv2/cann_interface.hpp>

これは利便性のために提供されているオーバーロードされたメンバ関数である。上記の関数とは、受け取る引数のみが異なる。

◆ flip() [2/2]

void cv::cann::flip ( InputArray src,
OutputArray dst,
int flipCode,
AscendStream & stream = AscendStream::Null() )

#include <opencv2/cann_interface.hpp>

2次元行列を垂直軸・水平軸またはその両方の軸まわりに反転する。

引数
src入力行列。
dst出力行列。
flipCode元画像に対するフリップモード:
  • 0 x軸まわりに反転する。
  • > 0 y軸まわりに反転する。
  • < 0 両軸まわりに反転する。
stream非同期版のための AscendStream
覚え書き
src は次のいずれかの型でなければならない: float16,float,int64,int32,int16,uint16
参照
cv::flip cv::cuda::flip

◆ merge() [1/4]

void cv::cann::merge ( const AscendMat * src,
size_t n,
AscendMat & dst,
AscendStream & stream = AscendStream::Null() )

#include <opencv2/cann_interface.hpp>

複数のシングルチャンネル行列からマルチチャンネル行列を作成する。

引数
src元行列の配列/ベクトル。
n元行列の数。
dst出力行列。
stream非同期版のための AscendStream
覚え書き
src は次のいずれかの型でなければならない: float16, float32, double, int32, int16, int8, int64, uint8, uint16, uint32, uint64。
参照
cv::merge cv::cuda::merge

◆ merge() [2/4]

void cv::cann::merge ( const AscendMat * src,
size_t n,
OutputArray & dst,
AscendStream & stream = AscendStream::Null() )

#include <opencv2/cann_interface.hpp>

これは利便性のために提供されているオーバーロードされたメンバ関数である。上記の関数とは、受け取る引数のみが異なる。

◆ merge() [3/4]

void cv::cann::merge ( const std::vector< AscendMat > & src,
AscendMat & dst,
AscendStream & stream = AscendStream::Null() )

#include <opencv2/cann_interface.hpp>

これは利便性のために提供されているオーバーロードされたメンバ関数である。上記の関数とは、受け取る引数のみが異なる。

◆ merge() [4/4]

void cv::cann::merge ( const std::vector< AscendMat > & src,
OutputArray & dst,
AscendStream & stream = AscendStream::Null() )

#include <opencv2/cann_interface.hpp>

これは利便性のために提供されているオーバーロードされたメンバ関数である。上記の関数とは、受け取る引数のみが異なる。

◆ resize() [1/2]

void cv::cann::resize ( const AscendMat & src,
AscendMat & dst,
Size dsize,
double fx,
double fy,
int interpolation,
AscendStream & stream = AscendStream::Null() )

#include <opencv2/cann_interface.hpp>

これは利便性のために提供されているオーバーロードされたメンバ関数である。上記の関数とは、受け取る引数のみが異なる。

◆ resize() [2/2]

void cv::cann::resize ( InputArray src,
OutputArray dst,
Size dsize,
double fx,
double fy,
int interpolation,
AscendStream & stream = AscendStream::Null() )

#include <opencv2/cann_interface.hpp>

画像 src を指定したサイズに縮小または拡大する。

引数
src入力画像
dst出力画像。サイズは dsize(非ゼロの場合)、または src.size(), fx, fy から計算されたサイズを持つ。dst の型は src と同じである。
dsize出力画像のサイズ。ゼロの場合は次のように計算される。

\[𝚍𝚜𝚒𝚣𝚎 = 𝚂𝚒𝚣𝚎(𝚛𝚘𝚞𝚗𝚍(𝚏𝚡*𝚜𝚛𝚌.𝚌𝚘𝚕𝚜), 𝚛𝚘𝚞𝚗𝚍(𝚏𝚢*𝚜𝚛𝚌.𝚛𝚘𝚠𝚜))\]

dsize、または fx と fy の両方のいずれかが非ゼロでなければならない。
fx水平軸方向のスケール係数。0 の場合は次のように計算される。

\[(𝚍𝚘𝚞𝚋𝚕𝚎)𝚍𝚜𝚒𝚣𝚎.𝚠𝚒𝚍𝚝𝚑/𝚜𝚛𝚌.𝚌𝚘𝚕𝚜\]

fy垂直軸方向のスケール係数。0 の場合は次のように計算される。

\[(𝚍𝚘𝚞𝚋𝚕𝚎)𝚍𝚜𝚒𝚣𝚎.𝚑𝚎𝚒𝚐𝚑𝚝/𝚜𝚛𝚌.𝚛𝚘𝚠𝚜\]

interpolation補間方法(cv.cann.InterpolationFlags を参照)
stream非同期版のための AscendStream
覚え書き
入力データ型にはいくつかの制約がある。最近傍補間またはバイリニア補間でリサンプリングする場合: 入力画像は uint8 でなければならず、GRAY および BGR 画像のみがサポートされている。入力画像と出力画像の解像度は [10*6, 4096*4096] の範囲内でなければならない。バイキュービック補間: 入力画像はさまざまな型でよいが、出力画像は float または uint8 でなければならない。ピクセル領域補間: 入力画像はさまざまな型でよいが、出力画像は常に float となる。
最近傍補間またはバイリニア補間でリサンプリングする場合、サポートされるデバイスは次のものに限られる: Atlas Inference Series products、Atlas 200/500 A2 Inference products、Atlas A2 Training Series products/Atlas 300I A2 Inference products
参照
cv::resize

◆ rotate() [1/2]

void cv::cann::rotate ( const AscendMat & src,
AscendMat & dst,
int rotateMode,
AscendStream & stream = AscendStream::Null() )

#include <opencv2/cann_interface.hpp>

これは利便性のために提供されているオーバーロードされたメンバ関数である。上記の関数とは、受け取る引数のみが異なる。

◆ rotate() [2/2]

void cv::cann::rotate ( InputArray src,
OutputArray dst,
int rotateCode,
AscendStream & stream = AscendStream::Null() )

#include <opencv2/cann_interface.hpp>

2D配列を90度単位で回転する。関数 cv::rotate は、配列を3通りのいずれかの方法で回転する。時計回りに90度回転 (rotateCode = ROTATE_90_CLOCKWISE)。時計回りに180度回転 (rotateCode = ROTATE_180)。時計回りに270度回転 (rotateCode = ROTATE_90_COUNTERCLOCKWISE)。

引数
src入力配列。
dstsrcと同じ型の出力配列。ROTATE_180ではサイズは同じであり、ROTATE_90_CLOCKWISEおよびROTATE_90_COUNTERCLOCKWISEでは行と列が入れ替わる。
rotateCode配列をどのように回転するかを指定する enum。enum RotateFlags を参照
stream非同期版のための AscendStream
覚え書き
src は次のいずれかの型でなければならない: float16,float,int64,int32,int16,uint16
参照
cv::rotate

◆ split() [1/4]

void cv::cann::split ( const AscendMat & src,
AscendMat * dst,
AscendStream & stream = AscendStream::Null() )

#include <opencv2/cann_interface.hpp>

マルチチャンネル行列の各プレーンを配列にコピーする。

引数
src入力行列。
dstシングルチャンネル行列の出力配列/ベクトル。
stream非同期版のための AscendStream
覚え書き
src は次のいずれかの型でなければならない: float16, float32, double, int64, int32, uint8, uint16, uint32, uint64, int8, int16, bool
参照
cv::split cv::cuda::split

◆ split() [2/4]

void cv::cann::split ( const AscendMat & src,
std::vector< AscendMat > & dst,
AscendStream & stream = AscendStream::Null() )

#include <opencv2/cann_interface.hpp>

これは利便性のために提供されているオーバーロードされたメンバ関数である。上記の関数とは、受け取る引数のみが異なる。

◆ split() [3/4]

void cv::cann::split ( const InputArray src,
AscendMat * dst,
AscendStream & stream = AscendStream::Null() )

#include <opencv2/cann_interface.hpp>

これは利便性のために提供されているオーバーロードされたメンバ関数である。上記の関数とは、受け取る引数のみが異なる。

◆ split() [4/4]

void cv::cann::split ( const InputArray src,
std::vector< AscendMat > & dst,
AscendStream & stream = AscendStream::Null() )

#include <opencv2/cann_interface.hpp>

これは利便性のために提供されているオーバーロードされたメンバ関数である。上記の関数とは、受け取る引数のみが異なる。

◆ transpose() [1/2]

void cv::cann::transpose ( const AscendMat & src,
AscendMat & dst,
AscendStream & stream = AscendStream::Null() )

#include <opencv2/cann_interface.hpp>

これは利便性のために提供されているオーバーロードされたメンバ関数である。上記の関数とは、受け取る引数のみが異なる。

◆ transpose() [2/2]

void cv::cann::transpose ( InputArray src,
OutputArray dst,
AscendStream & stream = AscendStream::Null() )

#include <opencv2/cann_interface.hpp>

行列を転置する。

引数
src入力行列。
dst出力行列。
stream非同期版のための AscendStream
覚え書き
src は次のいずれかの型でなければならない: float16,float,int8,int16,int32,int64,uint8,uint16,uint32,uint64,bool
参照
cv::transpose cv::cuda::transpose