提交 94c8204a 编写于 作者: S sjtubinlong

fix coding style

上级 06190691
...@@ -49,11 +49,8 @@ class HumanSeg: ...@@ -49,11 +49,8 @@ class HumanSeg:
self.predictor = LoadModel(model_dir, use_gpu) self.predictor = LoadModel(model_dir, use_gpu)
def Preprocess(self, image): def Preprocess(self, image):
im = cv2.resize(image, im = cv2.resize(
self.eval_size, image, self.eval_size, fx=0, fy=0, interpolation=cv2.INTER_CUBIC)
fx=0,
fy=0,
interpolation=cv2.INTER_CUBIC)
# HWC -> CHW # HWC -> CHW
im = im.swapaxes(1, 2) im = im.swapaxes(1, 2)
im = im.swapaxes(0, 1) im = im.swapaxes(0, 1)
...@@ -81,12 +78,14 @@ class HumanSeg: ...@@ -81,12 +78,14 @@ class HumanSeg:
output_data = output_data.as_ndarray() output_data = output_data.as_ndarray()
return self.Postprocess(image, output_data) return self.Postprocess(image, output_data)
# Do Predicting on a image # Do Predicting on a image
def PredictImage(seg, image_path): def PredictImage(seg, image_path):
im = cv2.imread(input_path) im = cv2.imread(input_path)
im = seg.Predict(im) im = seg.Predict(im)
cv2.imwrite('result.jpeg', im) cv2.imwrite('result.jpeg', im)
# Do Predicting on a video # Do Predicting on a video
def PredictVideo(seg, video_path): def PredictVideo(seg, video_path):
cap = cv2.VideoCapture(video_path) cap = cv2.VideoCapture(video_path)
...@@ -98,35 +97,35 @@ def PredictVideo(seg, video_path): ...@@ -98,35 +97,35 @@ def PredictVideo(seg, video_path):
fps = cap.get(cv2.CAP_PROP_FPS) fps = cap.get(cv2.CAP_PROP_FPS)
# Result Video Writer # Result Video Writer
out = cv2.VideoWriter('result.avi', out = cv2.VideoWriter('result.avi',
cv2.VideoWriter_fourcc('M','J','P','G'), cv2.VideoWriter_fourcc('M', 'J', 'P', 'G'), fps,
fps,
(int(w), int(h))) (int(w), int(h)))
# Start capturing from video # Start capturing from video
while(cap.isOpened()): while (cap.isOpened()):
ret, frame = cap.read() ret, frame = cap.read()
if ret == True: if ret == True:
im = seg.Predict(frame) im = seg.Predict(frame)
out.write(im); out.write(im)
else: else:
break break
cap.release() cap.release()
out.release() out.release()
# Do Predicting on a camera video stream
# Do Predicting on a camera video stream
def PredictCamera(seg): def PredictCamera(seg):
cap = cv2.VideoCapture(0) cap = cv2.VideoCapture(0)
if cap.isOpened() == False: if cap.isOpened() == False:
print("Error opening video stream or file") print("Error opening video stream or file")
return return
# Start capturing from video # Start capturing from video
while(cap.isOpened()): while (cap.isOpened()):
ret, frame = cap.read() ret, frame = cap.read()
if ret == True: if ret == True:
im = seg.Predict(frame) im = seg.Predict(frame)
cv2.imshow('Frame', im) cv2.imshow('Frame', im)
if cv2.waitKey(1) & 0xFF == ord('q'): if cv2.waitKey(1) & 0xFF == ord('q'):
break break
else: else:
break break
cap.release() cap.release()
...@@ -139,10 +138,11 @@ if __name__ == "__main__": ...@@ -139,10 +138,11 @@ if __name__ == "__main__":
model_dir = sys.argv[1] model_dir = sys.argv[1]
input_path = sys.argv[2] input_path = sys.argv[2]
use_gpu = int(sys.argv[3]) if len(sys.argv) >= 4 else 0 use_gpu = int(sys.argv[3]) if len(sys.argv) >= 4 else 0
# Init model # Init model
mean = [104.008, 116.669, 122.675] mean = [104.008, 116.669, 122.675]
scale = [1.0, 1.0, 1.0] scale = [1.0, 1.0, 1.0]
eval_size = (192, 192) eval_size = (513, 513)
seg = HumanSeg(model_dir, mean, scale, eval_size, use_gpu) seg = HumanSeg(model_dir, mean, scale, eval_size, use_gpu)
# Run Predicting on a video and result will be saved as result.avi # Run Predicting on a video and result will be saved as result.avi
PredictVideo(seg, input_path) PredictCamera(seg)
#PredictVideo(seg, input_path)
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册