こちらの記事のコードを動かしてみましたが、何点か修正が必要だったので差分だけ記載します。
環境構築
# Python2.*
sudo python -m pip install scikit-image sklearn opencv-python
# Python3.*
pip install scikit-image sklearn opencv-python
全てのコード
print "..."
は全て print("...")
に書き換え
1つ目、3つ目のコード
< fd = hog(neg_roi, orientations=9, pixels_per_cell=(6,6),cells_per_block=(3,3), visualise=False)
---
> fd = hog(neg_roi, orientations=9, pixels_per_cell=(6,6),cells_per_block=(3,3), visualise=False, block_norm='L2')
hogの引数にblock_norm='L2'
を追加
2つ目のコード
sklearn.grid_search
はDeprecatedなので、sklearn.model_selection
を使用する。また不要なimportを削除
import numpy as np
from sklearn.model_selection import GridSearchCV
from sklearn import svm
from sklearn.externals import joblib
3つ目のコード
タブとスペースが混ざっているのでスペースに統一
test_img = resize(test_img, img_size, mode='constant')
引数にmode='constant'
を追加
fd = hog(...
の次の行に fd = fd.reshape(1, -1)
が必要
hogの引数にblock_norm='L2'
を追加
これでPython2でもPython3でも動くはず。