-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy path__temp.txt
More file actions
76 lines (63 loc) · 2.86 KB
/
__temp.txt
File metadata and controls
76 lines (63 loc) · 2.86 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
# resize할 비율 구하기
r = 200. / img.shape[1]
dim = (200, int(img.shape[0] * r))
# resize 하기
resized = cv2.resize(img, dim, interpolation=cv2.INTER_AREA)
##################################################################
ret, framed = cap.read()
w = int(0.8 * 2.5*w)
h = int(0.7 * 2*h)
x = int(x + 0.6*w)
y = int(y - 0.2*h)
# frame 얼굴에 맞춰서 자르기
frame_roi = framed[y:y+h, x:x+w]
# 마스크의 크기 조절
face_mask_small = cv2.resize(
face_mask, (w, h), interpolation=cv2.INTER_AREA)
# 그레이마스크
gray_mask = cv2.cvtColor(face_mask_small, cv2.COLOR_BGR2GRAY)
# 바탕이 검은색인 마스크를 만듦
ret, mask = cv2.threshold(
gray_mask, 240, 255, cv2.THRESH_BINARY_INV)
mask_inv = cv2.bitwise_not(mask)
masked_face = cv2.bitwise_and(
face_mask_small, face_mask_small, mask=mask)
masked_frame = cv2.bitwise_and(frame_roi, frame_roi, mask=mask_inv)
framed[y:y+h, x:x+w] = cv2.add(masked_face, masked_frame)
cv2.imshow('Face mask_inv', mask_inv)
cv2.imshow(' masked_face', masked_face)
##################################################################
################ 마스크 띄우기 ################
# frame 얼굴에 맞춰서 자르기
#framed = cap.read()
w = r - l
h = t - b
x = int(x + 0.6*w)
y = int(y - 0.2*h)
frame_roi = resized[y:y+h, x:x+w]
# 마스크의 크기 조절
face_mask_small = cv2.resize(
face_mask, (r, l), interpolation=cv2.INTER_AREA)
# 그레이마스크
gray_mask = cv2.cvtColor(face_mask_small, cv2.COLOR_BGR2GRAY)
# 바탕이 검은색인 마스크를 만듦
ret, mask = cv2.threshold(gray_mask, 240, 255, cv2.THRESH_BINARY_INV)
mask_inv = cv2.bitwise_not(mask)
masked_face = cv2.bitwise_and(
face_mask_small, face_mask_small, mask=mask)
masked_frame = cv2.bitwise_and(
frame_roi, frame_roi, mask=mask_inv)
resized[y:y+h, x:x+w] = cv2.add(masked_face, masked_frame)
cv2.imshow('Face mask_inv', mask_inv)
cv2.imshow(' masked_face', masked_face)
#################################################
################################################################################################################
# STT로 얻어낸 문장 정보 받아오기
import data
import time
data = data.makefile("video_us2.csv")
if (time.time == data['start_time'][3]):
while (time.time < data['time'][3]):
cv2.putText(resized, data['getPhraseText'][3], (l, t),
cv2.FONT_HERSHEY_COMPLEX, 0.5, (0, 255, 0), 2)
################################################################################################################