Best Python code snippet using Airtest
multiscale_template_matching.py
Source:multiscale_template_matching.py
...142 if not self.record_pos is None:143 area, self.resolution = self._get_area_scope(self.im_source, self.im_search, self.record_pos, self.resolution)144 self.im_source = aircv.crop_image(self.im_source, area)145 check_source_larger_than_search(self.im_source, self.im_search)146 r_min, r_max = self._get_ratio_scope(147 self.im_source, self.im_search, self.resolution)148 s_gray, i_gray = img_mat_rgb_2_gray(self.im_search), img_mat_rgb_2_gray(self.im_source)149 confidence, max_loc, w, h, _ = self.multi_scale_search(150 i_gray, s_gray, ratio_min=r_min, ratio_max=r_max, step=self.scale_step, threshold=self.threshold)151 if not self.record_pos is None:152 max_loc = (max_loc[0] + area[0], max_loc[1] + area[1])153 154 # æ±åè¯å«ä½ç½®: ç®æ ä¸å¿ + ç®æ åºå:155 middle_point, rectangle = self._get_target_rectangle(max_loc, w, h)156 best_match = generate_result(middle_point, rectangle, confidence)157 LOGGING.debug("[%s] threshold=%s, result=%s" %158 (self.METHOD_NAME, self.threshold, best_match))159 return best_match if confidence >= self.threshold else None160 else:161 return None162 def _get_ratio_scope(self, src, templ, resolution):163 """é¢æµç¼©æ¾æ¯çä¸ä¸é."""164 H, W = src.shape[0], src.shape[1]165 th, tw = templ.shape[0], templ.shape[1]166 w, h = resolution167 rmin = min(H/h, W/w) # æ°æ§æ¨¡æ¿æ¯ä¸é168 rmax = max(H/h, W/w) # æ°æ§æ¨¡æ¿æ¯ä¸é169 ratio = max(th/H, tw/W) # å°å¾å¤§å¾æ¯170 r_min = ratio*rmin171 r_max = ratio*rmax172 return max(r_min, self.scale_step), min(r_max, 0.99)173 def get_predict_point(self, record_pos, screen_resolution):174 """é¢æµç¼©æ¾åçç¹å»ä½ç½®ç¹."""175 delta_x, delta_y = record_pos176 _w, _h = screen_resolution...
Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!