def test_detect_enemy_complicated_cactus_3(self): img = cv2.imread(f'../snapshots/complicated/cactus3.png') img_np = np.array(img) gray = utils.to_gray(img_np) phase = game_status.get_phase(gray) enemies, _ = enemy_detector.find_enemies(gray, phase) self.assertEqual(1, len(enemies))
def test_detect_enemy_complicated_1(self): enemy_files = ['bird.png', 'bird2.png', 'bird3.png', 'bird4.png', 'cactus.png', 'cactus2.png'] for enemy_file in enemy_files: img = cv2.imread(f'../snapshots/complicated/{enemy_file}') img_np = np.array(img) gray = utils.to_gray(img_np) phase = game_status.get_phase(gray) enemies, _ = enemy_detector.find_enemies(gray, phase) self.assertEqual(1, len(enemies))
def test_game_phase_2_1(self): img = cv2.imread('../snapshots/black_background_template.png') img_np = np.array(img) gray = utils.to_gray(img_np) phase = game_status.get_phase(gray) self.assertEqual(2, phase)
def test_game_phase_2_2(self): img = cv2.imread('../snapshots/phase2/enemy/enemy1.png') img_np = np.array(img) gray = utils.to_gray(img_np) phase = game_status.get_phase(gray) self.assertEqual(1, phase)
model = learning_model_service.find_one(processed=False, generation=generation) game_runner = GameRunner(model) print(f'Loading model: {model.model_id}') game_runner.start() phase = 1 i = 0 while True: img = ImageGrab.grab(bbox=screen_template.to_tuple(), childprocess=False) img_np = np.array(img) img_np = utils.resize_to_rectangle(img_np, screen_template) full_gray_np = utils.to_gray(img_np) # Detect enemies phase = game_status.get_phase(full_gray_np) # now = time() # # if now - start_time > 55: # print('Printing snapshot') # cv2.imwrite(f'save/{i}.png', full_gray_np) # i += 1 enemies, _ = enemy_detector.find_enemies(utils.to_gray(img_np), phase) game_runner.play(enemies, enemy_segment_template.shape()) game_status_str = game_status.get_game_status(utils.to_gray(img_np)) if game_status_str == 'game_over': game_runner.terminate()