Spaces:
Runtime error
Runtime error
| import numpy as np | |
| import cv2 | |
| class BasicLayout: | |
| # Variables | |
| colors = {'green': (0, 255, 0), | |
| 'red': (0, 0, 255), | |
| 'blue': (255, 0, 0), | |
| 'purple': (128, 0, 128), | |
| 'white': (255, 255, 255), | |
| 'black': (0, 0, 0)} | |
| thickness_dft = {'circle': 2} | |
| def __init__(self): | |
| self.thickness = self.thickness_dft | |
| def draw_circles(self, canvas, coord_list, color=colors['red'], thick=None): | |
| if thick is None: | |
| thick = self.thickness['circle'] | |
| for xy in coord_list: | |
| xy = np.array(xy + 0.5, dtype=int) | |
| canvas = cv2.circle(canvas, (xy[0], xy[1]), thick, color, -1) | |
| return canvas | |
| def update_thickness(self, thick_dict): | |
| for k, v in thick_dict.items(): | |
| self.thickness[k] = v | |
| def reset_thickness(self): | |
| self.thickness = self.thickness_dft | |
| def update_thick_byratio(self, ratio_dict): | |
| for key, ratio in ratio_dict.items(): | |
| self.thickness[key] = int(self.thickness_dft[key] * ratio + 0.5) | |