def detect_colored_circles_no_prints(rgb_img, radius_range, hsv_color_ranges):
"""
Detects circles by color as above, without prints.
"""
min_radius, max_radius = radius_range
# convert image to gray
gray_img = rgb2gray(rgb_img)
# find edges in image
edges_img = canny(gray_img, sigma=15.0, low_threshold=0.55, high_threshold=0.8)
# find circles from edge_image
hough_radii, hough_res = find_circles(edges_img, min_radius, max_radius)
#
centers, accums, radii = circles_per_radius(hough_radii, hough_res, number_circles_per_radius=16)
color_coords_dictionary, debug_img = find_circles_by_color(centers, accums, radii, rgb_img, hsv_color_ranges, False)
color_not_found = False
for key, array in color_coords_dictionary.items():
if len(array) == 0: color_not_found = True
if color_not_found:
return None
color_coords = calc_coordinate_averages(color_coords_dictionary)
return color_coords
cv.py 文件源码
python
阅读 28
收藏 0
点赞 0
评论 0
评论列表
文章目录