こちらの記事のコードを動かしてみましたが、何点か修正が必要だったので差分だけ記載します。
環境構築
.sh
# Python2.*
sudo python -m pip install scikit-image sklearn opencv-python
# Python3.*
pip install scikit-image sklearn opencv-python
全てのコード
print "..." は全て print("...")に書き換え
1つ目、3つ目のコード
.diff
< 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を削除
.py
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でも動くはず。
