From d074c9bf2717a5ba6f221eef31a977ceaa08c077 Mon Sep 17 00:00:00 2001 From: Stef Date: Wed, 18 Jun 2025 15:05:47 +0200 Subject: [PATCH] No empty logs and fixes some errors --- application/api/image_processing.py | 8 +++++++- application/api/views.py | 15 ++++++++------- application/dashboard/views.py | 6 ++++-- car_crop_pillow.jpg | Bin 73327 -> 872 bytes license_plate.jpg | Bin 3897 -> 1896 bytes pico_files/main.py | 27 ++++++++++++++++----------- received_image.jpg | Bin 0 -> 11419 bytes 7 files changed, 35 insertions(+), 21 deletions(-) create mode 100644 received_image.jpg diff --git a/application/api/image_processing.py b/application/api/image_processing.py index bf05110..2f59340 100644 --- a/application/api/image_processing.py +++ b/application/api/image_processing.py @@ -20,11 +20,15 @@ async def process_image(image: bytes) -> str: if r.boxes: for box in r.boxes: cls_name = r.names[int(box.cls[0])] - if cls_name == "car": + if cls_name in ["car", "truck"]: x1, y1, x2, y2 = map(int, box.xyxy[0]) size = (x2 - x1) ** 2 + (y2 - y1) ** 2 cars.append((size, (x1, y1, x2, y2))) + else: + return "" + if cars == []: + return "" # Get the biggest car box size, corners = max(cars, key=lambda x: x[0]) @@ -45,5 +49,7 @@ async def process_image(image: bytes) -> str: lp_np = np.array(object=lp_img) result = ocr_reader.readtext(image=lp_np) print(result) + else: + return "" return str(result[0][1]) # type: ignore diff --git a/application/api/views.py b/application/api/views.py index e1e4088..41e08f4 100644 --- a/application/api/views.py +++ b/application/api/views.py @@ -17,13 +17,14 @@ def data(): application.last_image.seek(0) application.last_image = io.BytesIO(request.data) np = asyncio.run(process_image(image=data)) - - # Check if the found plate is allowed to exit - allowed = AllowedPlate.query.filter_by(plate=np).first() is not None - db.session.add( # Log the found numberplate and status - LoggedItem(plate=np, allowed=allowed, datetime=datetime.now()) - ) - db.session.commit() + allowed = False + if np != "": + # Check if the found plate is allowed to exit + allowed = AllowedPlate.query.filter_by(plate=np).first() is not None + db.session.add( # Log the found numberplate and status + LoggedItem(plate=np, allowed=allowed, datetime=datetime.now()) + ) + db.session.commit() # Return decision to Pico return jsonify( diff --git a/application/dashboard/views.py b/application/dashboard/views.py index b86d6c2..8cb1dd6 100644 --- a/application/dashboard/views.py +++ b/application/dashboard/views.py @@ -23,8 +23,10 @@ def dashboard(): .limit(50) .all() ) - form = npForm() - return render_template("dashboard.html", plates=Plates, logs=logs, form=form) + form = npForm() + return render_template( + "dashboard.html", plates=Plates, logs=logs, form=form + ) @dash_blueprint.route("/add", methods=["GET", "POST"]) diff --git a/car_crop_pillow.jpg b/car_crop_pillow.jpg index 447682a352526a2415f8f47057b32c2f4926cc2f..a8151953479f365b49c667e04b8b8b031adbe9db 100644 GIT binary patch delta 268 zcmV+n0rURvyaeb5kQEgE02Km&0pI`t00000000000001y5|IP|9snV+r^o?+@~caW z$Y(1WZdPja-9PN`>9IB3QHEjMS2N++bhz!j+l9+7HDg-VEvI;-!;4|vdseYZ#!|aF zmb22Xl%YuZ9jh-;(e2<^+7Jo@$Q74ut!Sz<_J;&|n%S|w((e`Hj^lA7AbL~Kl@^F` zZ~p*1{{TuUJgC3tsG_GrxlcG_hWy*xG-w7})~A;4@vM;_9!VG+Rz}>eeGPP~@kwC} zZ5~MLNwY>{qzHSQR<4+3wz(~8Lopa4wd}O}DWk!Mk}Bqvpfnn(WOWg+`@GUZD1El~ S{&}CuitfL%AoLVa2mjebkAP_a literal 73327 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 diff --git a/pico_files/main.py b/pico_files/main.py index 5077fdf..1b7238a 100644 --- a/pico_files/main.py +++ b/pico_files/main.py @@ -15,19 +15,23 @@ good_pin = Pin(15, Pin.OUT) bad_pin = Pin(14, Pin.OUT) # Send the POST request with the raw image data as the body -url = f'http://{config.server}:{config.port}/{config.data_path}' +url = f"http://{config.server}:{config.port}/{config.data_path}" -spi = SPI(0,sck=Pin(18), miso=Pin(16), mosi=Pin(19), baudrate=8000000) # Pins for the Raspberry Pi Pico +spi = SPI( + 0, sck=Pin(18), miso=Pin(16), mosi=Pin(19), baudrate=8000000 +) # Pins for the Raspberry Pi Pico cs = Pin(17, Pin.OUT) cam = Camera(spi, cs, debug_text_enabled=True) headers = {"Content-Type": "image/jpeg"} -addr = socket.getaddrinfo(config.server,config.port)[0][-1] +addr = socket.getaddrinfo(config.server, config.port)[0][-1] + + def send_image(image_file_path): cam.capture_jpg() - with open(image_file_path, 'wb') as f: + with open(image_file_path, "wb") as f: f.write(b"") cam.save_JPG(image_file_path) - with open(image_file_path, 'rb') as f: + with open(image_file_path, "rb") as f: s = socket.socket() s.connect(addr) # Send HTTP headers @@ -36,9 +40,9 @@ def send_image(image_file_path): s.send(b"Transfer-Encoding: chunked\r\n") s.send(b"Content-Type: application/octet-stream\r\n") s.send(b"\r\n") - + chunk_size = 512 - + while True: chunk = f.read(chunk_size) if not chunk: @@ -54,16 +58,17 @@ def send_image(image_file_path): # Final chunk to end the stream s.send(b"0\r\n\r\n") s.close() - + return + while connection.isconnected(): good_pin.low() bad_pin.low() wait_pin.high() - #if random.choice([True, False]): + # if random.choice([True, False]): # response = send_image("1234.jpg") - #else: + # else: # response = send_image("car2.jpg") response = send_image("image.jpg") print(response) @@ -73,4 +78,4 @@ while connection.isconnected(): good_pin.high() else: bad_pin.high() - sleep(5) + sleep(5) diff --git a/received_image.jpg b/received_image.jpg new file mode 100644 index 0000000000000000000000000000000000000000..98f8fdbfab40890645353ca0421836644da3fcd3 GIT binary patch literal 11419 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