def search_stones_old(self, image, threshold): circles = search_stones(image, None) false_stones = 0 stones = [] for n in range(circles.cols): pixel = cv.Get1D(circles, n) pt = (cv.Round(pixel[0]), cv.Round(pixel[1])) radious = cv.Round(pixel[2]) # Comprobar el color en la imagen color = check_color_stone(pt, radious, image, threshold) position = Move.pixel_to_position(image.width, pixel) if color == BLACK: cv.Circle(image, pt, radious, cv.CV_RGB(255, 0, 0), 2) stones.append(Move(color, position)) elif color == WHITE: cv.Circle(image, pt, radious, cv.CV_RGB(0, 255, 0), 2) stones.append(Move(color, position)) else: #cv.Circle(image, pt, radious, cv.CV_RGB(255,255,0), 2) false_stones += 1 return image, stones
def search_stones_old(self, image, threshold): circles = search_stones(image) false_stones = 0 stones = [] if circles == None: return image, stones for ci in circles[0,:]: ci = np.rint(ci).astype(np.int) # apply round and int pt = (ci[0], ci[1]) radious = ci[2] # Comprobar el color en la imagen color = check_color_stone(pt, radious, image, threshold) position = Move.pixel_to_position(image.shape[0], pt) if color == BLACK: circle(image, pt, radious, (255, 255, 255), 2) stones.append(Move(color, position)) elif color == WHITE: circle(image, pt, radious, (0, 0, 0), 2) stones.append(Move(color, position)) else: circle(image, pt, radious, (255,0,0), 2) false_stones += 1 return image, stones