前提・実現したいこと
動画からフレームを読みこみ,1フレーム目と2フレーム目の輝度の配列の内積を求めたいと思っています.
発生している問題
以下のコードで処理を行ったところ明らかに内積の値が小さくなってしまいました.
該当のソースコード
Python
1import cv2 2import numpy as np 3 4#ビデオの読みこみ 5video_path='動画のパス' 6video=cv2.VideoCapture(video_path) 7 8#1フレーム目の読みこみ→グレースケール化→1次元化 9ret,temp=video.read() 10temp=np.array(cv2.cvtColor(temp, cv2.COLOR_BGR2GRAY)) 11temp_1=np.ravel(temp) 12 13#2フレーム目の読みこみ→グレースケール化→1次元化 14ret,target=video.read() 15target=np.array(cv2.cvtColor(target, cv2.COLOR_BGR2GRAY)) 16target_1=np.ravel(target) 17 18#内積の計算 19dot=np.dot(temp_1,target_1) 20print(dot)
###結果
画像の輝度は以下の通りです.個人情報のため,数値を省略しています.
内積の値が150と出てきました.お互いの要素の1番目を掛けるとその時点で4桁になるので,明らかにおかしい結果となってしまいました.
Python
1temp_1 2[ 37 45 33 21 15 24 24 25 33 26 30 37 29 34 35 47 41 38 3 19 11 8 20 36 40 42 21 30 34 16 33 41 40 49 27 20 48 4 ・・・ 5 26 10 10 10 36 104 28 33 15 16 40 34 25 25 28 34 35 35 6 45 27 19 52] 7 8target_1 9[ 34 58 57 36 27 35 19 20 40 27 16 25 28 39 46 54 40 55 10 43 15 8 22 23 38 60 37 28 29 21 38 41 46 60 43 24 33 11 ・・・ 12 25 12 18 21 50 107 20 20 14 22 41 36 23 27 29 31 24 28 13 39 22 18 46]
試したこと
原因がわかりません.元の配列にカンマが入っていないのが原因かと考えましたがカンマを入れる方法がわからず試していません.
補足情報(FW/ツールのバージョンなど)
spyder(python3.8)
回答1件
あなたの回答
tips
プレビュー