patti2021/01/17 10:18こちらを参考にしようとしたのですが、 'float'ではなく、整数を渡せと言われました。 こちらの記事の画像の読み込み方など教えてただけたら、とてもありがたいです。
退会済みユーザー2021/01/17 21:33> 'float'ではなく、整数を渡せと言われました。 画像の読み込みが出た後のエラーですね。 画像の読み込みはimg = cv2.imread(path)、 その後これらをcv2.cvtColor(img,cv2.COLOR_BGR2GRAY) の要領でグレースケールにしてmatching()に入れます。 ここまではできているものと思います。 > 'float'ではなく、整数を渡せと言われました。 これは、rangeの中に range(integer, integer)がrange(float,float)] であったり、 img[ingeter:integer, integer:integer]がimg[float:float, float:float] であったりすると起きます。 これはデータの型に注目するとわかりやすく、 integer/2=floatが起きているために置きます。 やることは、 int(integer/2)=integer のようにしてやることです。 幅や高さを÷2する部分がありますので、そこをint()で囲ってください。 それでうまくいきます。
patti2021/01/17 23:22ありがとうございます。実行することができました。 マッチングした箇所の座標をprintすることはできたのですが、 その箇所の相関係数もprintしたいのですが、そこもお聞きしてよいでしょうか?
退会済みユーザー2021/01/18 13:09for分の外側にoutputという変数があり、これで生のoutput÷outputの最大値として正規化しています。選ばれるのは.argmaxで求められる最大値のある○○番目の値ですので、計算式上は「outputの生÷最大値=1」となります。 常に1が返ってくるかと思いますが、ちゃんと計算をするならnp.max(output)となると思いますし、中身を1つずつ見ていくのであればprint(output)になると思います。少し工夫をすると2番目の~も出せるかと思います。 これで回答になっているでしょうか?
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/01/17 10:18
退会済みユーザー
2021/01/17 21:33
2021/01/17 23:22
退会済みユーザー
2021/01/18 13:09