質問編集履歴
5
情報追記
title
CHANGED
File without changes
|
body
CHANGED
@@ -4,10 +4,14 @@
|
|
4
4
|
私の使用しているカメラは8bitフルスケールYUY2のためYは0~255(8bitフルスケール)の範囲に情報がありますが、BT601フォーマットYUY2は16~235の範囲のためBGR変更後に
|
5
5
|
元の0~16と235~255の範囲のデータがなくなってしまっています。
|
6
6
|
|
7
|
+
|
7
8
|
cap_0 = cv2.VideoCapture(1)
|
9
|
+
while(1):
|
8
|
-
img = cap_0.read()
|
10
|
+
img = cap_0.read()
|
9
|
-
cv2.imshow('cap', img)
|
11
|
+
cv2.imshow('cap', img)
|
10
12
|
|
13
|
+
|
14
|
+
★上記コードで使用していると思われる変換式
|
11
15
|
BT601フォーマットYUY2⇒BGR:
|
12
16
|
R = 1.164(Y-16) + 1.596(Cr-128)
|
13
17
|
G = 1.164(Y-16) - 0.391(Cb-128) - 0.813(Cr-128)
|
4
質問誤記修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,10 +1,10 @@
|
|
1
1
|
USB接続(web)カメラを、openCVで読み込んで動画表示をしたいと考えています。
|
2
|
-
ただ、
|
2
|
+
ただ、openCVのreadで読み込むとBT601フォーマットYUY2⇒BGRとして変更してしまいますが、この変換式を8bitフルスケールYUY2⇒BGRで読み込む方法はありますでしょうか
|
3
3
|
|
4
4
|
私の使用しているカメラは8bitフルスケールYUY2のためYは0~255(8bitフルスケール)の範囲に情報がありますが、BT601フォーマットYUY2は16~235の範囲のためBGR変更後に
|
5
5
|
元の0~16と235~255の範囲のデータがなくなってしまっています。
|
6
6
|
|
7
|
-
cap_0 = cv2.VideoCapture(
|
7
|
+
cap_0 = cv2.VideoCapture(1)
|
8
8
|
img = cap_0.read()
|
9
9
|
cv2.imshow('cap', img)
|
10
10
|
|
3
タグ追加
title
CHANGED
File without changes
|
body
CHANGED
File without changes
|
2
コード追加
title
CHANGED
File without changes
|
body
CHANGED
@@ -6,6 +6,7 @@
|
|
6
6
|
|
7
7
|
cap_0 = cv2.VideoCapture(no)
|
8
8
|
img = cap_0.read()
|
9
|
+
cv2.imshow('cap', img)
|
9
10
|
|
10
11
|
BT601フォーマットYUY2⇒BGR:
|
11
12
|
R = 1.164(Y-16) + 1.596(Cr-128)
|
1
変化式追記
title
CHANGED
File without changes
|
body
CHANGED
@@ -5,4 +5,15 @@
|
|
5
5
|
元の0~16と235~255の範囲のデータがなくなってしまっています。
|
6
6
|
|
7
7
|
cap_0 = cv2.VideoCapture(no)
|
8
|
-
img = cap_0.read()
|
8
|
+
img = cap_0.read()
|
9
|
+
|
10
|
+
BT601フォーマットYUY2⇒BGR:
|
11
|
+
R = 1.164(Y-16) + 1.596(Cr-128)
|
12
|
+
G = 1.164(Y-16) - 0.391(Cb-128) - 0.813(Cr-128)
|
13
|
+
B = 1.164(Y-16) + 2.018(Cb-128)
|
14
|
+
|
15
|
+
★やりたい変換式
|
16
|
+
8bitフルスケールYUY2⇒BGR:
|
17
|
+
R = 1.000Y + 1.402V
|
18
|
+
G = 1.000Y - 0.344U - 0.714V
|
19
|
+
B = 1.000Y + 1.772U
|