From c49e649345004a834a0217836910ffc45baa5836 Mon Sep 17 00:00:00 2001 From: merschie <f-mersch@web.de> Date: Thu, 26 Oct 2023 14:26:45 +0200 Subject: [PATCH] Docstring Documentation --- src/webserver.py | 30 +++++++++++++++++++++++++----- 1 file changed, 25 insertions(+), 5 deletions(-) diff --git a/src/webserver.py b/src/webserver.py index 52dc71d..880914c 100644 --- a/src/webserver.py +++ b/src/webserver.py @@ -17,6 +17,14 @@ chars = ''.join(char_list) def image_to_base64(processed_image): + """Konvertiert ein Bild in ein base64-encoded-String + + Args: + processed_image (np.Array): Ein schwarz-weiß Bild als numpy Array + + Returns: + String: base64-encoded-String des Bildes + """ processed_image = processed_image + 0.5 processed_image = processed_image * 255 #rotate image 90 degrees @@ -32,8 +40,16 @@ def image_to_base64(processed_image): image_base64 = base64.b64encode(array_bytes).decode('utf-8') return image_base64 -def base64_to_image(processed_image): - image=base64.b64decode(processed_image.encode('utf-8')) +def base64_to_image(image_data): + """Konvertiert ein base64-encoded-String in ein Bild + + Args: + processed_image (String): base64-encoded-String des Bildes + + Returns: + np.Array: Numpy Array des Bildes + """ + image=base64.b64decode(image_data.encode('utf-8')) image_array = np.frombuffer(image, dtype=np.uint64) h=image_array[-2] w=image_array[-1] @@ -44,7 +60,12 @@ def base64_to_image(processed_image): @app.route('/predictName', methods=['POST']) -def predictNach(): +def predictName(): + """Sagt den Namen auf einem Bild vorher. Bekommt als Daten per json ein Bild und eine Namensliste. Das Bild muss schwarz weiß sein und base64-encoded sein. Die Namensliste muss ein String sein, der mit Leerzeichen getrennt alle möglichen Namen enthält. + + Returns: + json: Im json Format wird das erkannte Wort und das zur Vorhersage genutztes Bild als base64-encoded-String zurückgegeben. + """ image_data=json.loads(request.data)['image'] image_array=base64_to_image(image_data) @@ -55,10 +76,9 @@ def predictNach(): #change corpus for name names=json.loads(request.data)['names'] - print(names) model_name.corpus = names.split(' ') - recognized, probability = htr_model.Model.infer_batch(model_name, batch) + recognized, _ = htr_model.Model.infer_batch(model_name, batch) image_base64 = image_to_base64(processed_image) -- GitLab