@@ -34,7 +34,10 @@ def main() -> None:
3434 help = "threshold for contrast. [-1.0, 1.0] Default: 1.0" ,
3535 default = 1.0 ,
3636 )
37- threshold_template_group .add_argument ("--template_path" , type = str , help = "path to template image" )
37+ template_group = threshold_template_group .add_argument_group ("Template Options" )
38+ template_group .add_argument ("--template_path" , type = str , help = "path to template image" )
39+ template_group .add_argument ("--template_scale" , type = float , help = "scale up and down the template" , default = 1.0 )
40+ template_group .add_argument ("--template_angle" , type = float , help = "angle of template" , default = 0 )
3841
3942 # optional arguments
4043 parser .add_argument (
@@ -79,14 +82,16 @@ def main() -> None:
7982 angle = args .angle
8083 threshold = args .threshold
8184 template_path = args .template_path
85+ template_scale = args .template_scale
86+ template_angle = args .template_angle
8287 sort_brightest = args .sort_brightest
8388 reversed_direction = args .reverse_sorting
8489 output_path = args .output
8590
8691 # Manually check for mutual exclusive group
8792 if image_path is None and sys .stdin .isatty ():
8893 parser .print_usage (sys .stderr )
89- parser .error ("one of the arguments --image_path stdin is required" )
94+ parser .error ("one of the arguments --image_path [ stdin] is required" )
9095
9196 sys .exit (2 )
9297
@@ -116,7 +121,8 @@ def main() -> None:
116121 sys .exit (- 1 )
117122
118123 template = cv2 .imread (str (template_path ))
119- create_mask = partial (image .create_template_mask , template )
124+ template = image .scale_image (template , template_scale )
125+ create_mask = partial (image .create_template_mask , template , template_angle - angle )
120126 else :
121127 create_mask = partial (image .create_contrast_mask , threshold )
122128
0 commit comments