Completed configuration

This commit is contained in:
Lukas Wölfer
2020-02-09 01:20:29 +01:00
parent d0e6fa0a46
commit 30cd0c20ac
8 changed files with 205 additions and 16 deletions

View File

@@ -0,0 +1,59 @@
import copy
import dataclasses
import json
import tempfile
from pathlib import Path
import cv2
import numpy as np
import shenzhen_solitaire.card_detection.adjustment as adjustment
import shenzhen_solitaire.card_detection.card_finder as card_finder
from shenzhen_solitaire.card_detection.configuration import Configuration
def main() -> None:
"""Generate a configuration"""
normal_image = cv2.imread("pictures/specific/BunkerCards.jpg")
picture_dir = Path(tempfile.mkdtemp(prefix="shenzhen-special-buttons-"))
print(picture_dir)
button_adjustment = adjustment.adjust_squares(normal_image, count_x=1, count_y=3)
normal_squares = card_finder.get_field_squares(
normal_image, button_adjustment, 3, 1
)
cv2.imwrite(str(picture_dir / "nz.png"), normal_squares[0])
cv2.imwrite(str(picture_dir / "nf.png"), normal_squares[1])
cv2.imwrite(str(picture_dir / "nb.png"), normal_squares[2])
fa_shiny_image = cv2.imread("pictures/specific/FaShiny.jpg")
fa_shiny_squares = card_finder.get_field_squares(
fa_shiny_image, button_adjustment, 3, 1
)
cv2.imwrite(str(picture_dir / "sf.png"), fa_shiny_squares[1])
zhong_shiny_image = cv2.imread("pictures/specific/ZhongShiny.jpg")
zhong_shiny_squares = card_finder.get_field_squares(
zhong_shiny_image, button_adjustment, 3, 1
)
cv2.imwrite(str(picture_dir / "sz.png"), zhong_shiny_squares[0])
bai_shiny_image = cv2.imread("pictures/specific/BaiShiny.jpg")
bai_shiny_squares = card_finder.get_field_squares(
bai_shiny_image, button_adjustment, 3, 1
)
cv2.imwrite(str(picture_dir / "sb.png"), bai_shiny_squares[2])
cv2.imwrite(str(picture_dir / "gz.png"), bai_shiny_squares[0])
cv2.imwrite(str(picture_dir / "gf.png"), bai_shiny_squares[1])
bai_black_image = cv2.imread("pictures/specific/BaiBlack.jpg")
bai_black_squares = card_finder.get_field_squares(
bai_black_image, button_adjustment, 3, 1
)
cv2.imwrite(str(picture_dir / "gb.png"), bai_black_squares[2])
print(picture_dir)
print(json.dumps(dataclasses.asdict(button_adjustment)))
if __name__ == "__main__":
main()