Gonna catch em all.

This commit is contained in:
Casper 2019-04-24 09:41:57 +02:00
parent f2a2534c34
commit cde518c14e

View File

@ -7,26 +7,29 @@ import numpy as np
from main import find_occupied_squares from main import find_occupied_squares
from runner import find_homography, warp_board from runner import find_homography, warp_board
# Load base64 encoded image from stdin
from tensor_classifier import predict_board from tensor_classifier import predict_board
while True: while True:
stdin = sys.stdin.readline() try:
stdin_decoded = base64.b64decode(stdin) stdin = sys.stdin.readline()
img_array = np.frombuffer(stdin_decoded, dtype=np.uint8) stdin_decoded = base64.b64decode(stdin)
camera_img = cv2.imdecode(img_array, flags=cv2.COLOR_BGR2RGB) img_array = np.frombuffer(stdin_decoded, dtype=np.uint8)
camera_img = cv2.cvtColor(camera_img, cv2.COLOR_BGR2RGB) camera_img = cv2.imdecode(img_array, flags=cv2.COLOR_BGR2RGB)
camera_img = cv2.cvtColor(camera_img, cv2.COLOR_BGR2RGB)
# def do_everything: # def do_everything:
homography = find_homography(camera_img) homography = find_homography(camera_img)
warped_board = warp_board(camera_img, homography) warped_board = warp_board(camera_img, homography)
occupied_squares = find_occupied_squares(warped_board) occupied_squares = find_occupied_squares(warped_board)
board = predict_board(occupied_squares) board = predict_board(occupied_squares)
# Finally, output to stdout for unity to read # Finally, output to stdout for unity to read
result = { result = {
"homography": homography.tolist(), "homography": homography.tolist(),
"board": board.to_array, "board": board.to_array,
} }
print(json.dumps(result)) print(json.dumps(result))
except Exception as e:
print(e)