diff --git a/zesje/images.py b/zesje/images.py index b4728afceeed645c6b989816b17ba14e1f5e7bb6..ff8669e5b04aa77aa882f0bdb3acbaf9901ab450 100644 --- a/zesje/images.py +++ b/zesje/images.py @@ -54,8 +54,6 @@ def fix_corner_markers(corner_keypoints, shape): ------- corner_keypoints : A list of four corner markers. - top_left : tuple - Coordinates of the top left corner marker """ if len(corner_keypoints) == 4: @@ -78,7 +76,6 @@ def fix_corner_markers(corner_keypoints, shape): # Top left point is missing (dx, dy) = tuple(map(sub, top_right[0], bottom_right[0])) missing_point = tuple(map(add, bottom_left[0], (dx, dy))) - top_left = [missing_point] elif not bottom_left: # Bottom left point is missing @@ -95,7 +92,8 @@ def fix_corner_markers(corner_keypoints, shape): (dx, dy) = tuple(map(sub, top_left[0], bottom_left[0])) missing_point = tuple(map(sub, top_right[0], (dx, dy))) - return top_left[0], corner_keypoints + [missing_point] + corner_keypoints.append(missing_point) + return corner_keypoints def box_is_filled(image_array, box_coords, padding=0.3, threshold=150, pixels=False): diff --git a/zesje/pregrader.py b/zesje/pregrader.py index 4954bc8a7d2083f782ce0c03e42c74284e2e12f7..e667bef20759729281523ef6ac0110b93df29cec 100644 --- a/zesje/pregrader.py +++ b/zesje/pregrader.py @@ -22,7 +22,11 @@ def add_feedback_to_solution(sub, exam, page, page_img, corner_keypoints): """ problems_on_page = [problem for problem in exam.problems if problem.widget.page == page] - top_left_point, fixed_corner_keypoints = fix_corner_markers(corner_keypoints, page_img.shape) + fixed_corners = fix_corner_markers(corner_keypoints, page_img.shape) + + x_min = min(point[0] for point in fixed_corners) + y_min = min(point[1] for point in fixed_corners) + top_left_point = (x_min, y_min) for problem in problems_on_page: sol = Solution.query.filter(Solution.problem_id == problem.id, Solution.submission_id == sub.id).one_or_none()