i am complately neawby form python,please help
My file is stored in "C:\Users\metbe\OneDrive\Desktop\RPA\download\DM2.jpg"
i need work with this file,
how can i address this file the code herebelow,
My file is stored in "C:\Users\metbe\OneDrive\Desktop\RPA\download\DM2.jpg"
i need work with this file,
how can i address this file the code herebelow,

#------------------------------------------------------------------------------- # Name: module1 # Purpose: # # Author: rakesh.sv # # Created: 12-09-2019 # Copyright: (c) rakesh.sv 2019 # Licence: <your licence> #------------------------------------------------------------------------------- import numpy as np from skimage import io from skimage.feature import canny from skimage.color import rgb2gray from skimage.transform import hough_line, hough_line_peaks from skimage.transform import rotate import skimage import os import json import base64 from base64 import b64encode from json import dumps from io import BytesIO from PIL import Image class Main(): def __init__(self): self.piby4 = np.pi / 4 def check_path(self, path): if os.path.isabs(path): full_path = path else: full_path = os.getcwd() + '/' + str(path) return full_path def calculate_deviation(self,angle): angle_in_degrees = np.abs(angle) deviation = np.abs(self.piby4 - angle_in_degrees) return deviation def get_max_freq_elem(self,arr): max_arr = [] freqs = {} for i in arr: if i in freqs: freqs[i] += 1 else: freqs[i] = 1 sorted_keys = sorted(freqs, key=freqs.get, reverse=True) max_freq = freqs[sorted_keys[0]] for k in sorted_keys: if freqs[k] == max_freq: max_arr.append(k) return max_arr def compare_sum(self,value): if value >= 44 and value <= 46: return True else: return False def predict(self,input_path): try: img = skimage.io.imread(input_path,as_gray=True, plugin='imageio') edges = canny(img, sigma=3.0) ##hspace , angle , distance h, a, d = hough_line(edges) ## accum, angles, dists _, ap, _ = hough_line_peaks(h, a, d, num_peaks=20) if len(ap) == 0: pil_img = Image.fromarray(img) buff = BytesIO() pil_img.save(buff, format="PNG") new_image_string = base64.b64encode(buff.getvalue()).decode("utf-8") return json.dumps({"Angle":0.0,"Base64":new_image_string}) absolute_deviations = [self.calculate_deviation(k) for k in ap] average_deviation = np.mean(np.rad2deg(absolute_deviations)) ap_deg = [np.rad2deg(x) for x in ap] bin_0_45 = [] bin_45_90 = [] bin_0_45n = [] bin_45_90n = [] for ang in ap_deg: deviation_sum = int(90 - ang + average_deviation) if self.compare_sum(deviation_sum): bin_45_90.append(ang) continue deviation_sum = int(ang + average_deviation) if self.compare_sum(deviation_sum): bin_0_45.append(ang) continue deviation_sum = int(-ang + average_deviation) if self.compare_sum(deviation_sum): bin_0_45n.append(ang) continue deviation_sum = int(90 + ang + average_deviation) if self.compare_sum(deviation_sum): bin_45_90n.append(ang) angles = [bin_0_45, bin_45_90, bin_0_45n, bin_45_90n] lmax = 0 for j in range(len(angles)): l = len(angles[j]) if l > lmax: lmax = l maxi = j if lmax: ans_arr = self.get_max_freq_elem(angles[maxi]) ans_res = np.mean(ans_arr) else: ans_arr = self.get_max_freq_elem(ap_deg) ans_res = np.mean(ans_arr) data = { "Image File": "", "Average Deviation from pi/4": average_deviation, "Estimated Angle": ans_res, "Angle bins": angles} angle = data['Estimated Angle'] if angle!="": if angle >= 0 and angle <= 90: rot_angle = angle - 90 if angle >= -45 and angle < 0: rot_angle = angle - 90 if angle >= -90 and angle < -45: rot_angle = 90 + angle rotated = rotate(img, rot_angle, resize=True,mode='edge') higher_dtype = (rotated*255) h_dtype = higher_dtype.astype(np.uint8) pil_img = Image.fromarray(h_dtype) buff = BytesIO() pil_img.save(buff, format="PNG") new_image_string = base64.b64encode(buff.getvalue()).decode("utf-8") ## file_name=os.path.basename(os.path.normpath(input_path)) ## directory_path = os.path.dirname(path) ## output_path = directory_path+"\\"+"Corrected_"+file_name ## io.imsave(output_path, higher_dtype.astype(np.uint8)) return json.dumps({"Angle":rot_angle,"Base64":new_image_string}) else: return json.dumps({"Angle":"Image quality not supported","Base64":""}) except Exception as e: ## return json.dumps(str(e), indent=2) return json.dumps({"Angle":"Image quality not supported","Base64":""}) ##if __name__ == '__main__': ## path = "C:\\Users\\rakesh.sv\\Desktop\\Skew_images\\Corrected_skew_sample.png" ## output_path"C:\\Users\\rakesh.sv\\Desktop\\Skew_images\\skew_sample5_corrected.jpg" ## obj = Main() ## x =obj.predict(path) ## print(x)