면접을 준비하는 사람에게 도움이 될수 있도록 프로그램을 만들었다.
프로그램을 시작하면 캠에 담긴 나의 모습과 면접 질문이 같이 화면으로 볼수있고,
파일명을 면접질문으로 저장하는 프로그램이다.
이 프로그램의 치명적인 단점을 뒤늦게 알았다. 음성이 녹음이 안된다. (...망한 프로젝트 입니다)
음성 녹음되도록 만들고 난 뒤에 면접 준비하는 사람들에게 프로그램 공유하겠습니다.
1. 면접예상항목.py
면접의 예상 항목들을 집어 넣는 곳이다.
면접예상항목.py
import interviewRecord
inter = interviewRecord.interviewRecord()
testlist = [ #이 리스트 안에 질문들을 넣어주세요
'1. 질문1',
'19. 마지막 질문'
]
jiphap = set(testlist)
for i in jiphap:
if inter.startInterview(i):
break
2. interviewRecord.py
별로 어렵지 않다. 소스코드를 보고 필요한 옵션들을 바꿔주면서 사용하면 될거 같다.
interviewRecord.py
import cv2
import time
from PIL import ImageFont, ImageDraw, Image
import numpy as np
class interviewRecord:
def startInterview(self,interviewNo):
result = False
directory = 'C://Users//User//Desktop//interview//'
cap = cv2.VideoCapture(0)
cap.set(3, 720) # 윈도우 크기
cap.set(4, 1080)
fc = 20.0
codec = cv2.VideoWriter_fourcc('D', 'I', 'V', 'X')
count = 99
textinput = str(interviewNo)
timetext = time.strftime('%Y%m%d%H%M%S',time.localtime(time.time()))
while(cap.isOpened()):
if count != time.strftime('%H',time.localtime(time.time())): # 시간이 바뀌면 영상파일을 새로 만든다. (시간으로 감지)
count = time.strftime('%H',time.localtime(time.time()))
print('시간 변경 감지')
out = cv2.VideoWriter(directory+textinput+'('+timetext+').avi', codec, fc, (int(cap.get(3)), int(cap.get(4))))
print('파일 생성:',time.strftime('%Y-%m-%d %H시 %M분',time.localtime(time.time()))+'.avi')
ret, frame = cap.read()
pill_image = Image.fromarray(cv2.cvtColor(frame, cv2.COLOR_BGR2RGB))
draw = ImageDraw.Draw(pill_image)
x1, y1 = 15, 15
draw.text((x1, y1), textinput, font=ImageFont.truetype('malgun.ttf', 25), fill=(0, 0, 0))
frame = cv2.cvtColor(np.array(pill_image), cv2.COLOR_RGB2BGR) #맥
if ret==True:
cv2.imshow('Shoney Interview Program (''Q'' : next interview , ''E'' : Exit)', frame)
out.write(frame)
if cv2.waitKey(1) & 0xFF == ord('q'):
break
elif cv2.waitKey(1) & 0xFF == ord('e'):
result = True
break
else:
break
cap.release()
cv2.destroyAllWindows()
return result