1 line
32 KiB
JSON
1 line
32 KiB
JSON
{"nodes": [{"id": "backend_services_image_processing_py", "label": "image_processing.py", "file_type": "code", "source_file": "backend/services/image_processing.py", "source_location": "L1"}, {"id": "image_processing_strip_exif_orientation", "label": "strip_exif_orientation()", "file_type": "code", "source_file": "backend/services/image_processing.py", "source_location": "L25"}, {"id": "image_processing_imageprocessor", "label": "ImageProcessor", "file_type": "code", "source_file": "backend/services/image_processing.py", "source_location": "L65"}, {"id": "image_processing_imageprocessor_init", "label": ".__init__()", "file_type": "code", "source_file": "backend/services/image_processing.py", "source_location": "L81"}, {"id": "image_processing_imageprocessor_process_photo", "label": ".process_photo()", "file_type": "code", "source_file": "backend/services/image_processing.py", "source_location": "L85"}, {"id": "image_processing_imageprocessor_extract_exif_orientation", "label": "._extract_exif_orientation()", "file_type": "code", "source_file": "backend/services/image_processing.py", "source_location": "L229"}, {"id": "image_processing_imageprocessor_rotate_by_orientation", "label": "._rotate_by_orientation()", "file_type": "code", "source_file": "backend/services/image_processing.py", "source_location": "L249"}, {"id": "image_processing_imageprocessor_smart_crop_opencv", "label": "._smart_crop_opencv()", "file_type": "code", "source_file": "backend/services/image_processing.py", "source_location": "L280"}, {"id": "image_processing_imageprocessor_detect_text_orientation", "label": "._detect_text_orientation()", "file_type": "code", "source_file": "backend/services/image_processing.py", "source_location": "L336"}, {"id": "image_processing_imageprocessor_rotate_image", "label": "._rotate_image()", "file_type": "code", "source_file": "backend/services/image_processing.py", "source_location": "L406"}, {"id": "image_processing_imageprocessor_resize_and_compress", "label": "._resize_and_compress()", "file_type": "code", "source_file": "backend/services/image_processing.py", "source_location": "L419"}, {"id": "image_processing_imageprocessor_generate_thumbnail", "label": "._generate_thumbnail()", "file_type": "code", "source_file": "backend/services/image_processing.py", "source_location": "L470"}, {"id": "image_processing_rationale_1", "label": "OpenCV-based image processing pipeline for smart photo handling. Handles: - EXI", "file_type": "rationale", "source_file": "backend/services/image_processing.py", "source_location": "L1"}, {"id": "image_processing_rationale_26", "label": "Remove EXIF orientation metadata from image bytes. Returns image bytes with", "file_type": "rationale", "source_file": "backend/services/image_processing.py", "source_location": "L26"}, {"id": "image_processing_rationale_66", "label": "Service for processing uploaded images with smart features.", "file_type": "rationale", "source_file": "backend/services/image_processing.py", "source_location": "L66"}, {"id": "image_processing_rationale_82", "label": "Initialize the image processor.", "file_type": "rationale", "source_file": "backend/services/image_processing.py", "source_location": "L82"}, {"id": "image_processing_rationale_88", "label": "Process a photo with EXIF rotation, smart cropping, and compression. Ar", "file_type": "rationale", "source_file": "backend/services/image_processing.py", "source_location": "L88"}, {"id": "image_processing_rationale_230", "label": "Extract EXIF orientation tag from image. Returns: Orientati", "file_type": "rationale", "source_file": "backend/services/image_processing.py", "source_location": "L230"}, {"id": "image_processing_rationale_252", "label": "Rotate image based on EXIF orientation tag. Args: image: PI", "file_type": "rationale", "source_file": "backend/services/image_processing.py", "source_location": "L252"}, {"id": "image_processing_rationale_283", "label": "Use OpenCV to detect and crop the main object in the image. Args:", "file_type": "rationale", "source_file": "backend/services/image_processing.py", "source_location": "L283"}, {"id": "image_processing_rationale_339", "label": "Detect text orientation using Hough line transform. Args: i", "file_type": "rationale", "source_file": "backend/services/image_processing.py", "source_location": "L339"}, {"id": "image_processing_rationale_407", "label": "Rotate image by specified angle. Args: image: PIL Image", "file_type": "rationale", "source_file": "backend/services/image_processing.py", "source_location": "L407"}, {"id": "image_processing_rationale_420", "label": "Resize image to 1200px on long side and compress to JPEG. Args:", "file_type": "rationale", "source_file": "backend/services/image_processing.py", "source_location": "L420"}, {"id": "image_processing_rationale_471", "label": "Generate 200px square thumbnail with center crop. Args: ima", "file_type": "rationale", "source_file": "backend/services/image_processing.py", "source_location": "L471"}], "edges": [{"source": "backend_services_image_processing_py", "target": "io", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/services/image_processing.py", "source_location": "L13", "weight": 1.0}, {"source": "backend_services_image_processing_py", "target": "logging", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/services/image_processing.py", "source_location": "L14", "weight": 1.0}, {"source": "backend_services_image_processing_py", "target": "typing", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "backend/services/image_processing.py", "source_location": "L15", "weight": 1.0}, {"source": "backend_services_image_processing_py", "target": "pil", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "backend/services/image_processing.py", "source_location": "L16", "weight": 1.0}, {"source": "backend_services_image_processing_py", "target": "pil_exiftags", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "backend/services/image_processing.py", "source_location": "L17", "weight": 1.0}, {"source": "backend_services_image_processing_py", "target": "piexif", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/services/image_processing.py", "source_location": "L18", "weight": 1.0}, {"source": "backend_services_image_processing_py", "target": "cv2", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/services/image_processing.py", "source_location": "L19", "weight": 1.0}, {"source": "backend_services_image_processing_py", "target": "numpy", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/services/image_processing.py", "source_location": "L20", "weight": 1.0}, {"source": "backend_services_image_processing_py", "target": "image_processing_strip_exif_orientation", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/services/image_processing.py", "source_location": "L25", "weight": 1.0}, {"source": "backend_services_image_processing_py", "target": "image_processing_imageprocessor", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/services/image_processing.py", "source_location": "L65", "weight": 1.0}, {"source": "image_processing_imageprocessor", "target": "image_processing_imageprocessor_init", "relation": "method", "confidence": "EXTRACTED", "source_file": "backend/services/image_processing.py", "source_location": "L81", "weight": 1.0}, {"source": "image_processing_imageprocessor", "target": "image_processing_imageprocessor_process_photo", "relation": "method", "confidence": "EXTRACTED", "source_file": "backend/services/image_processing.py", "source_location": "L85", "weight": 1.0}, {"source": "image_processing_imageprocessor", "target": "image_processing_imageprocessor_extract_exif_orientation", "relation": "method", "confidence": "EXTRACTED", "source_file": "backend/services/image_processing.py", "source_location": "L229", "weight": 1.0}, {"source": "image_processing_imageprocessor", "target": "image_processing_imageprocessor_rotate_by_orientation", "relation": "method", "confidence": "EXTRACTED", "source_file": "backend/services/image_processing.py", "source_location": "L249", "weight": 1.0}, {"source": "image_processing_imageprocessor", "target": "image_processing_imageprocessor_smart_crop_opencv", "relation": "method", "confidence": "EXTRACTED", "source_file": "backend/services/image_processing.py", "source_location": "L280", "weight": 1.0}, {"source": "image_processing_imageprocessor", "target": "image_processing_imageprocessor_detect_text_orientation", "relation": "method", "confidence": "EXTRACTED", "source_file": "backend/services/image_processing.py", "source_location": "L336", "weight": 1.0}, {"source": "image_processing_imageprocessor", "target": "image_processing_imageprocessor_rotate_image", "relation": "method", "confidence": "EXTRACTED", "source_file": "backend/services/image_processing.py", "source_location": "L406", "weight": 1.0}, {"source": "image_processing_imageprocessor", "target": "image_processing_imageprocessor_resize_and_compress", "relation": "method", "confidence": "EXTRACTED", "source_file": "backend/services/image_processing.py", "source_location": "L419", "weight": 1.0}, {"source": "image_processing_imageprocessor", "target": "image_processing_imageprocessor_generate_thumbnail", "relation": "method", "confidence": "EXTRACTED", "source_file": "backend/services/image_processing.py", "source_location": "L470", "weight": 1.0}, {"source": "image_processing_imageprocessor_process_photo", "target": "image_processing_imageprocessor_extract_exif_orientation", "relation": "calls", "confidence": "EXTRACTED", "source_file": "backend/services/image_processing.py", "source_location": "L129", "weight": 1.0}, {"source": "image_processing_imageprocessor_process_photo", "target": "image_processing_imageprocessor_smart_crop_opencv", "relation": "calls", "confidence": "EXTRACTED", "source_file": "backend/services/image_processing.py", "source_location": "L160", "weight": 1.0}, {"source": "image_processing_imageprocessor_process_photo", "target": "image_processing_imageprocessor_detect_text_orientation", "relation": "calls", "confidence": "EXTRACTED", "source_file": "backend/services/image_processing.py", "source_location": "L167", "weight": 1.0}, {"source": "image_processing_imageprocessor_process_photo", "target": "image_processing_imageprocessor_rotate_image", "relation": "calls", "confidence": "EXTRACTED", "source_file": "backend/services/image_processing.py", "source_location": "L175", "weight": 1.0}, {"source": "image_processing_imageprocessor_process_photo", "target": "image_processing_imageprocessor_rotate_by_orientation", "relation": "calls", "confidence": "EXTRACTED", "source_file": "backend/services/image_processing.py", "source_location": "L190", "weight": 1.0}, {"source": "image_processing_imageprocessor_process_photo", "target": "image_processing_imageprocessor_resize_and_compress", "relation": "calls", "confidence": "EXTRACTED", "source_file": "backend/services/image_processing.py", "source_location": "L201", "weight": 1.0}, {"source": "image_processing_imageprocessor_process_photo", "target": "image_processing_imageprocessor_generate_thumbnail", "relation": "calls", "confidence": "EXTRACTED", "source_file": "backend/services/image_processing.py", "source_location": "L204", "weight": 1.0}, {"source": "image_processing_rationale_1", "target": "backend_services_image_processing_py", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "backend/services/image_processing.py", "source_location": "L1", "weight": 1.0}, {"source": "image_processing_rationale_26", "target": "image_processing_strip_exif_orientation", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "backend/services/image_processing.py", "source_location": "L26", "weight": 1.0}, {"source": "image_processing_rationale_66", "target": "image_processing_imageprocessor", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "backend/services/image_processing.py", "source_location": "L66", "weight": 1.0}, {"source": "image_processing_rationale_82", "target": "image_processing_imageprocessor_init", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "backend/services/image_processing.py", "source_location": "L82", "weight": 1.0}, {"source": "image_processing_rationale_88", "target": "image_processing_imageprocessor_process_photo", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "backend/services/image_processing.py", "source_location": "L88", "weight": 1.0}, {"source": "image_processing_rationale_230", "target": "image_processing_imageprocessor_extract_exif_orientation", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "backend/services/image_processing.py", "source_location": "L230", "weight": 1.0}, {"source": "image_processing_rationale_252", "target": "image_processing_imageprocessor_rotate_by_orientation", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "backend/services/image_processing.py", "source_location": "L252", "weight": 1.0}, {"source": "image_processing_rationale_283", "target": "image_processing_imageprocessor_smart_crop_opencv", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "backend/services/image_processing.py", "source_location": "L283", "weight": 1.0}, {"source": "image_processing_rationale_339", "target": "image_processing_imageprocessor_detect_text_orientation", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "backend/services/image_processing.py", "source_location": "L339", "weight": 1.0}, {"source": "image_processing_rationale_407", "target": "image_processing_imageprocessor_rotate_image", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "backend/services/image_processing.py", "source_location": "L407", "weight": 1.0}, {"source": "image_processing_rationale_420", "target": "image_processing_imageprocessor_resize_and_compress", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "backend/services/image_processing.py", "source_location": "L420", "weight": 1.0}, {"source": "image_processing_rationale_471", "target": "image_processing_imageprocessor_generate_thumbnail", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "backend/services/image_processing.py", "source_location": "L471", "weight": 1.0}], "raw_calls": [{"caller_nid": "image_processing_strip_exif_orientation", "callee": "open", "source_file": "backend/services/image_processing.py", "source_location": "L39"}, {"caller_nid": "image_processing_strip_exif_orientation", "callee": "BytesIO", "source_file": "backend/services/image_processing.py", "source_location": "L39"}, {"caller_nid": "image_processing_strip_exif_orientation", "callee": "load", "source_file": "backend/services/image_processing.py", "source_location": "L43"}, {"caller_nid": "image_processing_strip_exif_orientation", "callee": "get", "source_file": "backend/services/image_processing.py", "source_location": "L43"}, {"caller_nid": "image_processing_strip_exif_orientation", "callee": "dump", "source_file": "backend/services/image_processing.py", "source_location": "L46"}, {"caller_nid": "image_processing_strip_exif_orientation", "callee": "BytesIO", "source_file": "backend/services/image_processing.py", "source_location": "L53"}, {"caller_nid": "image_processing_strip_exif_orientation", "callee": "save", "source_file": "backend/services/image_processing.py", "source_location": "L55"}, {"caller_nid": "image_processing_strip_exif_orientation", "callee": "save", "source_file": "backend/services/image_processing.py", "source_location": "L57"}, {"caller_nid": "image_processing_strip_exif_orientation", "callee": "getvalue", "source_file": "backend/services/image_processing.py", "source_location": "L59"}, {"caller_nid": "image_processing_strip_exif_orientation", "callee": "warning", "source_file": "backend/services/image_processing.py", "source_location": "L61"}, {"caller_nid": "image_processing_imageprocessor_process_photo", "callee": "len", "source_file": "backend/services/image_processing.py", "source_location": "L113"}, {"caller_nid": "image_processing_imageprocessor_process_photo", "callee": "len", "source_file": "backend/services/image_processing.py", "source_location": "L116"}, {"caller_nid": "image_processing_imageprocessor_process_photo", "callee": "open", "source_file": "backend/services/image_processing.py", "source_location": "L122"}, {"caller_nid": "image_processing_imageprocessor_process_photo", "callee": "BytesIO", "source_file": "backend/services/image_processing.py", "source_location": "L122"}, {"caller_nid": "image_processing_imageprocessor_process_photo", "callee": "len", "source_file": "backend/services/image_processing.py", "source_location": "L124"}, {"caller_nid": "image_processing_imageprocessor_process_photo", "callee": "info", "source_file": "backend/services/image_processing.py", "source_location": "L125"}, {"caller_nid": "image_processing_imageprocessor_process_photo", "callee": "print", "source_file": "backend/services/image_processing.py", "source_location": "L126"}, {"caller_nid": "image_processing_imageprocessor_process_photo", "callee": "info", "source_file": "backend/services/image_processing.py", "source_location": "L131"}, {"caller_nid": "image_processing_imageprocessor_process_photo", "callee": "info", "source_file": "backend/services/image_processing.py", "source_location": "L148"}, {"caller_nid": "image_processing_imageprocessor_process_photo", "callee": "print", "source_file": "backend/services/image_processing.py", "source_location": "L149"}, {"caller_nid": "image_processing_imageprocessor_process_photo", "callee": "crop", "source_file": "backend/services/image_processing.py", "source_location": "L150"}, {"caller_nid": "image_processing_imageprocessor_process_photo", "callee": "info", "source_file": "backend/services/image_processing.py", "source_location": "L154"}, {"caller_nid": "image_processing_imageprocessor_process_photo", "callee": "print", "source_file": "backend/services/image_processing.py", "source_location": "L155"}, {"caller_nid": "image_processing_imageprocessor_process_photo", "callee": "info", "source_file": "backend/services/image_processing.py", "source_location": "L158"}, {"caller_nid": "image_processing_imageprocessor_process_photo", "callee": "info", "source_file": "backend/services/image_processing.py", "source_location": "L164"}, {"caller_nid": "image_processing_imageprocessor_process_photo", "callee": "info", "source_file": "backend/services/image_processing.py", "source_location": "L171"}, {"caller_nid": "image_processing_imageprocessor_process_photo", "callee": "warning", "source_file": "backend/services/image_processing.py", "source_location": "L179"}, {"caller_nid": "image_processing_imageprocessor_process_photo", "callee": "warning", "source_file": "backend/services/image_processing.py", "source_location": "L183"}, {"caller_nid": "image_processing_imageprocessor_process_photo", "callee": "info", "source_file": "backend/services/image_processing.py", "source_location": "L191"}, {"caller_nid": "image_processing_imageprocessor_process_photo", "callee": "abs", "source_file": "backend/services/image_processing.py", "source_location": "L194"}, {"caller_nid": "image_processing_imageprocessor_process_photo", "callee": "rotate", "source_file": "backend/services/image_processing.py", "source_location": "L195"}, {"caller_nid": "image_processing_imageprocessor_process_photo", "callee": "info", "source_file": "backend/services/image_processing.py", "source_location": "L197"}, {"caller_nid": "image_processing_imageprocessor_process_photo", "callee": "print", "source_file": "backend/services/image_processing.py", "source_location": "L198"}, {"caller_nid": "image_processing_imageprocessor_process_photo", "callee": "len", "source_file": "backend/services/image_processing.py", "source_location": "L216"}, {"caller_nid": "image_processing_imageprocessor_process_photo", "callee": "error", "source_file": "backend/services/image_processing.py", "source_location": "L221"}, {"caller_nid": "image_processing_imageprocessor_process_photo", "callee": "str", "source_file": "backend/services/image_processing.py", "source_location": "L224"}, {"caller_nid": "image_processing_imageprocessor_extract_exif_orientation", "callee": "hasattr", "source_file": "backend/services/image_processing.py", "source_location": "L238"}, {"caller_nid": "image_processing_imageprocessor_extract_exif_orientation", "callee": "load", "source_file": "backend/services/image_processing.py", "source_location": "L239"}, {"caller_nid": "image_processing_imageprocessor_extract_exif_orientation", "callee": "get", "source_file": "backend/services/image_processing.py", "source_location": "L240"}, {"caller_nid": "image_processing_imageprocessor_extract_exif_orientation", "callee": "debug", "source_file": "backend/services/image_processing.py", "source_location": "L246"}, {"caller_nid": "image_processing_imageprocessor_rotate_by_orientation", "callee": "transpose", "source_file": "backend/services/image_processing.py", "source_location": "L265"}, {"caller_nid": "image_processing_imageprocessor_rotate_by_orientation", "callee": "transpose", "source_file": "backend/services/image_processing.py", "source_location": "L267"}, {"caller_nid": "image_processing_imageprocessor_rotate_by_orientation", "callee": "transpose", "source_file": "backend/services/image_processing.py", "source_location": "L269"}, {"caller_nid": "image_processing_imageprocessor_rotate_by_orientation", "callee": "transpose", "source_file": "backend/services/image_processing.py", "source_location": "L271"}, {"caller_nid": "image_processing_imageprocessor_rotate_by_orientation", "callee": "transpose", "source_file": "backend/services/image_processing.py", "source_location": "L273"}, {"caller_nid": "image_processing_imageprocessor_rotate_by_orientation", "callee": "transpose", "source_file": "backend/services/image_processing.py", "source_location": "L275"}, {"caller_nid": "image_processing_imageprocessor_rotate_by_orientation", "callee": "transpose", "source_file": "backend/services/image_processing.py", "source_location": "L277"}, {"caller_nid": "image_processing_imageprocessor_smart_crop_opencv", "callee": "cvtColor", "source_file": "backend/services/image_processing.py", "source_location": "L294"}, {"caller_nid": "image_processing_imageprocessor_smart_crop_opencv", "callee": "array", "source_file": "backend/services/image_processing.py", "source_location": "L294"}, {"caller_nid": "image_processing_imageprocessor_smart_crop_opencv", "callee": "cvtColor", "source_file": "backend/services/image_processing.py", "source_location": "L295"}, {"caller_nid": "image_processing_imageprocessor_smart_crop_opencv", "callee": "Canny", "source_file": "backend/services/image_processing.py", "source_location": "L298"}, {"caller_nid": "image_processing_imageprocessor_smart_crop_opencv", "callee": "findContours", "source_file": "backend/services/image_processing.py", "source_location": "L301"}, {"caller_nid": "image_processing_imageprocessor_smart_crop_opencv", "callee": "debug", "source_file": "backend/services/image_processing.py", "source_location": "L306"}, {"caller_nid": "image_processing_imageprocessor_smart_crop_opencv", "callee": "max", "source_file": "backend/services/image_processing.py", "source_location": "L310"}, {"caller_nid": "image_processing_imageprocessor_smart_crop_opencv", "callee": "boundingRect", "source_file": "backend/services/image_processing.py", "source_location": "L311"}, {"caller_nid": "image_processing_imageprocessor_smart_crop_opencv", "callee": "int", "source_file": "backend/services/image_processing.py", "source_location": "L314"}, {"caller_nid": "image_processing_imageprocessor_smart_crop_opencv", "callee": "int", "source_file": "backend/services/image_processing.py", "source_location": "L315"}, {"caller_nid": "image_processing_imageprocessor_smart_crop_opencv", "callee": "max", "source_file": "backend/services/image_processing.py", "source_location": "L317"}, {"caller_nid": "image_processing_imageprocessor_smart_crop_opencv", "callee": "max", "source_file": "backend/services/image_processing.py", "source_location": "L318"}, {"caller_nid": "image_processing_imageprocessor_smart_crop_opencv", "callee": "min", "source_file": "backend/services/image_processing.py", "source_location": "L319"}, {"caller_nid": "image_processing_imageprocessor_smart_crop_opencv", "callee": "min", "source_file": "backend/services/image_processing.py", "source_location": "L320"}, {"caller_nid": "image_processing_imageprocessor_smart_crop_opencv", "callee": "crop", "source_file": "backend/services/image_processing.py", "source_location": "L323"}, {"caller_nid": "image_processing_imageprocessor_smart_crop_opencv", "callee": "debug", "source_file": "backend/services/image_processing.py", "source_location": "L326"}, {"caller_nid": "image_processing_imageprocessor_smart_crop_opencv", "callee": "warning", "source_file": "backend/services/image_processing.py", "source_location": "L333"}, {"caller_nid": "image_processing_imageprocessor_detect_text_orientation", "callee": "cvtColor", "source_file": "backend/services/image_processing.py", "source_location": "L351"}, {"caller_nid": "image_processing_imageprocessor_detect_text_orientation", "callee": "array", "source_file": "backend/services/image_processing.py", "source_location": "L351"}, {"caller_nid": "image_processing_imageprocessor_detect_text_orientation", "callee": "warning", "source_file": "backend/services/image_processing.py", "source_location": "L355"}, {"caller_nid": "image_processing_imageprocessor_detect_text_orientation", "callee": "cvtColor", "source_file": "backend/services/image_processing.py", "source_location": "L358"}, {"caller_nid": "image_processing_imageprocessor_detect_text_orientation", "callee": "Canny", "source_file": "backend/services/image_processing.py", "source_location": "L361"}, {"caller_nid": "image_processing_imageprocessor_detect_text_orientation", "callee": "HoughLines", "source_file": "backend/services/image_processing.py", "source_location": "L364"}, {"caller_nid": "image_processing_imageprocessor_detect_text_orientation", "callee": "len", "source_file": "backend/services/image_processing.py", "source_location": "L366"}, {"caller_nid": "image_processing_imageprocessor_detect_text_orientation", "callee": "debug", "source_file": "backend/services/image_processing.py", "source_location": "L367"}, {"caller_nid": "image_processing_imageprocessor_detect_text_orientation", "callee": "degrees", "source_file": "backend/services/image_processing.py", "source_location": "L374"}, {"caller_nid": "image_processing_imageprocessor_detect_text_orientation", "callee": "append", "source_file": "backend/services/image_processing.py", "source_location": "L375"}, {"caller_nid": "image_processing_imageprocessor_detect_text_orientation", "callee": "array", "source_file": "backend/services/image_processing.py", "source_location": "L378"}, {"caller_nid": "image_processing_imageprocessor_detect_text_orientation", "callee": "where", "source_file": "backend/services/image_processing.py", "source_location": "L379"}, {"caller_nid": "image_processing_imageprocessor_detect_text_orientation", "callee": "mean", "source_file": "backend/services/image_processing.py", "source_location": "L382"}, {"caller_nid": "image_processing_imageprocessor_detect_text_orientation", "callee": "abs", "source_file": "backend/services/image_processing.py", "source_location": "L389"}, {"caller_nid": "image_processing_imageprocessor_detect_text_orientation", "callee": "abs", "source_file": "backend/services/image_processing.py", "source_location": "L393"}, {"caller_nid": "image_processing_imageprocessor_detect_text_orientation", "callee": "debug", "source_file": "backend/services/image_processing.py", "source_location": "L396"}, {"caller_nid": "image_processing_imageprocessor_detect_text_orientation", "callee": "warning", "source_file": "backend/services/image_processing.py", "source_location": "L403"}, {"caller_nid": "image_processing_imageprocessor_rotate_image", "callee": "rotate", "source_file": "backend/services/image_processing.py", "source_location": "L417"}, {"caller_nid": "image_processing_imageprocessor_resize_and_compress", "callee": "max", "source_file": "backend/services/image_processing.py", "source_location": "L431"}, {"caller_nid": "image_processing_imageprocessor_resize_and_compress", "callee": "int", "source_file": "backend/services/image_processing.py", "source_location": "L436"}, {"caller_nid": "image_processing_imageprocessor_resize_and_compress", "callee": "int", "source_file": "backend/services/image_processing.py", "source_location": "L437"}, {"caller_nid": "image_processing_imageprocessor_resize_and_compress", "callee": "resize", "source_file": "backend/services/image_processing.py", "source_location": "L438"}, {"caller_nid": "image_processing_imageprocessor_resize_and_compress", "callee": "debug", "source_file": "backend/services/image_processing.py", "source_location": "L439"}, {"caller_nid": "image_processing_imageprocessor_resize_and_compress", "callee": "split", "source_file": "backend/services/image_processing.py", "source_location": "L448"}, {"caller_nid": "image_processing_imageprocessor_resize_and_compress", "callee": "split", "source_file": "backend/services/image_processing.py", "source_location": "L451"}, {"caller_nid": "image_processing_imageprocessor_resize_and_compress", "callee": "new", "source_file": "backend/services/image_processing.py", "source_location": "L454"}, {"caller_nid": "image_processing_imageprocessor_resize_and_compress", "callee": "paste", "source_file": "backend/services/image_processing.py", "source_location": "L455"}, {"caller_nid": "image_processing_imageprocessor_resize_and_compress", "callee": "BytesIO", "source_file": "backend/services/image_processing.py", "source_location": "L459"}, {"caller_nid": "image_processing_imageprocessor_resize_and_compress", "callee": "save", "source_file": "backend/services/image_processing.py", "source_location": "L460"}, {"caller_nid": "image_processing_imageprocessor_resize_and_compress", "callee": "getvalue", "source_file": "backend/services/image_processing.py", "source_location": "L461"}, {"caller_nid": "image_processing_imageprocessor_resize_and_compress", "callee": "debug", "source_file": "backend/services/image_processing.py", "source_location": "L463"}, {"caller_nid": "image_processing_imageprocessor_resize_and_compress", "callee": "len", "source_file": "backend/services/image_processing.py", "source_location": "L464"}, {"caller_nid": "image_processing_imageprocessor_generate_thumbnail", "callee": "min", "source_file": "backend/services/image_processing.py", "source_location": "L485"}, {"caller_nid": "image_processing_imageprocessor_generate_thumbnail", "callee": "crop", "source_file": "backend/services/image_processing.py", "source_location": "L491"}, {"caller_nid": "image_processing_imageprocessor_generate_thumbnail", "callee": "resize", "source_file": "backend/services/image_processing.py", "source_location": "L494"}, {"caller_nid": "image_processing_imageprocessor_generate_thumbnail", "callee": "split", "source_file": "backend/services/image_processing.py", "source_location": "L504"}, {"caller_nid": "image_processing_imageprocessor_generate_thumbnail", "callee": "split", "source_file": "backend/services/image_processing.py", "source_location": "L507"}, {"caller_nid": "image_processing_imageprocessor_generate_thumbnail", "callee": "new", "source_file": "backend/services/image_processing.py", "source_location": "L510"}, {"caller_nid": "image_processing_imageprocessor_generate_thumbnail", "callee": "paste", "source_file": "backend/services/image_processing.py", "source_location": "L511"}, {"caller_nid": "image_processing_imageprocessor_generate_thumbnail", "callee": "BytesIO", "source_file": "backend/services/image_processing.py", "source_location": "L515"}, {"caller_nid": "image_processing_imageprocessor_generate_thumbnail", "callee": "save", "source_file": "backend/services/image_processing.py", "source_location": "L516"}, {"caller_nid": "image_processing_imageprocessor_generate_thumbnail", "callee": "getvalue", "source_file": "backend/services/image_processing.py", "source_location": "L517"}, {"caller_nid": "image_processing_imageprocessor_generate_thumbnail", "callee": "debug", "source_file": "backend/services/image_processing.py", "source_location": "L519"}, {"caller_nid": "image_processing_imageprocessor_generate_thumbnail", "callee": "len", "source_file": "backend/services/image_processing.py", "source_location": "L521"}, {"caller_nid": "image_processing_imageprocessor_generate_thumbnail", "callee": "error", "source_file": "backend/services/image_processing.py", "source_location": "L527"}]} |