はしくれエンジニアもどきのメモ

情報系技術・哲学・デザインなどの勉強メモ・備忘録です。

SIFT, SURFが利用できるPython用OpenCVをインストールする

SIFT, SURFが利用できるPythonOpenCVをインストールする

PythonOpenCVのインストールメモ. PythonOpenCVでは,商用利用不可アルゴリズム(SIFTやSURF)が含まれないモジュールと 含まれるモジュールの2種類がある.

環境

  • Windows10 64bit

PythonOpenCV

PythonOpenCVは2種類ある.

今回はSIFTやSURFも使いたいので後者をインストールする.

各モジュールは,https://docs.opencv.org/master/ で確認できる.

インストール

pipからインストールできる.condaは必須でない.

pip install opencv-contrib-python

2020年1月現在だと4.1.2.30がインストールできる.

ロードして確認

モジュール名はcv2なのでこれインポートする.

import cv2

バージョンを確認.

cv2.__version__
> '4.1.2'

opencv機械学習用mlモジュールが使えるか確認する.

dir(cv2.ml)
['ANN_MLP_ANNEAL',
 'ANN_MLP_BACKPROP',
 'ANN_MLP_GAUSSIAN',
 'ANN_MLP_IDENTITY',
 'ANN_MLP_LEAKYRELU',
 'ANN_MLP_NO_INPUT_SCALE',
 'ANN_MLP_NO_OUTPUT_SCALE',
 'ANN_MLP_RELU',
 'ANN_MLP_RPROP',
 'ANN_MLP_SIGMOID_SYM',
 'ANN_MLP_UPDATE_WEIGHTS',
 'ANN_MLP_create',
 'ANN_MLP_load',
 'BOOST_DISCRETE',
 'BOOST_GENTLE',
 'BOOST_LOGIT',
 'BOOST_REAL',
 'Boost_DISCRETE',
 'Boost_GENTLE',
 'Boost_LOGIT',
 'Boost_REAL',
 'Boost_create',
 'Boost_load',
 'COL_SAMPLE',
 'DTREES_PREDICT_AUTO',
 'DTREES_PREDICT_MASK',
 'DTREES_PREDICT_MAX_VOTE',
 'DTREES_PREDICT_SUM',
 'DTrees_PREDICT_AUTO',
 'DTrees_PREDICT_MASK',
 'DTrees_PREDICT_MAX_VOTE',
 'DTrees_PREDICT_SUM',
 'DTrees_create',
 'DTrees_load',
 'EM_COV_MAT_DEFAULT',
 'EM_COV_MAT_DIAGONAL',
 'EM_COV_MAT_GENERIC',
 'EM_COV_MAT_SPHERICAL',
 'EM_DEFAULT_MAX_ITERS',
 'EM_DEFAULT_NCLUSTERS',
 'EM_START_AUTO_STEP',
 'EM_START_E_STEP',
 'EM_START_M_STEP',
 'EM_create',
 'EM_load',
 'KNEAREST_BRUTE_FORCE',
 'KNEAREST_KDTREE',
 'KNearest_BRUTE_FORCE',
 'KNearest_KDTREE',
 'KNearest_create',
 'KNearest_load',
 'LOGISTIC_REGRESSION_BATCH',
 'LOGISTIC_REGRESSION_MINI_BATCH',
 'LOGISTIC_REGRESSION_REG_DISABLE',
 'LOGISTIC_REGRESSION_REG_L1',
 'LOGISTIC_REGRESSION_REG_L2',
 'LogisticRegression_BATCH',
 'LogisticRegression_MINI_BATCH',
 'LogisticRegression_REG_DISABLE',
 'LogisticRegression_REG_L1',
 'LogisticRegression_REG_L2',
 'LogisticRegression_create',
 'LogisticRegression_load',
 'NormalBayesClassifier_create',
 'NormalBayesClassifier_load',
 'ParamGrid_create',
 'ROW_SAMPLE',
 'RTrees_create',
 'RTrees_load',
 'STAT_MODEL_COMPRESSED_INPUT',
 'STAT_MODEL_PREPROCESSED_INPUT',
 'STAT_MODEL_RAW_OUTPUT',
 'STAT_MODEL_UPDATE_MODEL',
 'SVMSGD_ASGD',
 'SVMSGD_HARD_MARGIN',
 'SVMSGD_SGD',
 'SVMSGD_SOFT_MARGIN',
 'SVMSGD_create',
 'SVMSGD_load',
 'SVM_C',
 'SVM_CHI2',
 'SVM_COEF',
 'SVM_CUSTOM',
 'SVM_C_SVC',
 'SVM_DEGREE',
 'SVM_EPS_SVR',
 'SVM_GAMMA',
 'SVM_INTER',
 'SVM_LINEAR',
 'SVM_NU',
 'SVM_NU_SVC',
 'SVM_NU_SVR',
 'SVM_ONE_CLASS',
 'SVM_P',
 'SVM_POLY',
 'SVM_RBF',
 'SVM_SIGMOID',
 'SVM_create',
 'SVM_getDefaultGridPtr',
 'SVM_load',
 'StatModel_COMPRESSED_INPUT',
 'StatModel_PREPROCESSED_INPUT',
 'StatModel_RAW_OUTPUT',
 'StatModel_UPDATE_MODEL',
 'TEST_ERROR',
 'TRAIN_ERROR',
 'TrainData_create',
 'TrainData_getSubMatrix',
 'TrainData_getSubVector',
 'VAR_CATEGORICAL',
 'VAR_NUMERICAL',
 'VAR_ORDERED',
 '__doc__',
 '__loader__',
 '__name__',
 '__package__',
 '__spec__']