{
    "success": true,
    "mode": "QJN9C10_ECM1_5_PIPE_ANALYSIS",
    "pipe_total": 5,
    "ecm": 1,
    "status": "ok",
    "label_color": "green",
    "label_text": "Good",
    "display_text": "Good",
    "reason": "No water flow or clean water flow",
    "has_discharge_pipe": true,
    "is_real_flow": true,
    "is_clean_water": true,
    "is_silty_water": false,
    "detected_pipe_count": 5,
    "active_flow_count": 2,
    "muddy_roi_count": 0,
    "clean_roi_count": 2,
    "blue_ratio": 0.8528999999999999914734871708787977695465087890625,
    "flow_blue_ratio": 0.86750000000000004884981308350688777863979339599609375,
    "nonblue_ratio": 0.132500000000000006661338147750939242541790008544921875,
    "white_ratio": 0.045900000000000003297362383136714925058186054229736328125,
    "brown_ratio": 0.00169999999999999990528409821166633264510892331600189208984375,
    "yellow_ratio": 0,
    "graycyan_ratio": 0.029800000000000000099920072216264088638126850128173828125,
    "dark_ratio": 0.0286999999999999998168132009368491708301007747650146484375,
    "silty_strength": 0.00169999999999999990528409821166633264510892331600189208984375,
    "clean_strength": 0.0698000000000000009325873406851314939558506011962890625,
    "image_url": "https://cctv.envautomation.com/env_cctv/qingjian/n9c10/ecm1/roi_masked.jpg",
    "image_file": "/home/envcctv/public_html/env_cctv/qingjian/n9c10/ecm1/roi_masked.jpg",
    "width": 1920,
    "height": 1080,
    "analyzed_at": "2026-11-12 07:45:06",
    "db_saved": true,
    "db_error": "",
    "roi_debug": {
        "pipe_1": {
            "roi": [
                0.25500000000000000444089209850062616169452667236328125,
                0.2099999999999999922284388276239042170345783233642578125,
                0.317000000000000003996802888650563545525074005126953125,
                0.270000000000000017763568394002504646778106689453125
            ],
            "px": [
                489,
                226,
                608,
                291
            ],
            "frame_usable": 3376,
            "frame_blue_ratio": 0.72070000000000000728306304154102690517902374267578125,
            "flow_usable": 3392,
            "flow_blue_ratio": 0.955799999999999982946974341757595539093017578125,
            "flow_nonblue_ratio": 0.04420000000000000317523785042794770561158657073974609375,
            "flow_white_ratio": 0,
            "flow_brown_ratio": 0,
            "flow_yellow_ratio": 0,
            "flow_graycyan_ratio": 0.0020999999999999998702426839969348293379880487918853759765625,
            "flow_dark_ratio": 0.007000000000000000145716771982051795930601656436920166015625,
            "mass_row_ratio": 0,
            "run_ratio": 0,
            "max_row_ratio": 0.049200000000000000677236045021345489658415317535400390625,
            "roi_clean_strength": 0.00169999999999999990528409821166633264510892331600189208984375,
            "roi_muddy_strength": 0,
            "pipe_detected": true,
            "clean_flow_detected": false,
            "muddy_flow_detected": false,
            "flow_detected": false,
            "muddy_roi_detected": false,
            "clean_roi_detected": false
        },
        "pipe_2": {
            "roi": [
                0.3930000000000000159872115546022541821002960205078125,
                0.2099999999999999922284388276239042170345783233642578125,
                0.450000000000000011102230246251565404236316680908203125,
                0.270000000000000017763568394002504646778106689453125
            ],
            "px": [
                754,
                226,
                864,
                291
            ],
            "frame_usable": 3156,
            "frame_blue_ratio": 0.780699999999999949551465761032886803150177001953125,
            "flow_usable": 3133,
            "flow_blue_ratio": 0.90810000000000001829647544582257978618144989013671875,
            "flow_nonblue_ratio": 0.09189999999999999558131236199187696911394596099853515625,
            "flow_white_ratio": 0.006100000000000000387190279838023343472741544246673583984375,
            "flow_brown_ratio": 0,
            "flow_yellow_ratio": 0,
            "flow_graycyan_ratio": 0.041500000000000002164934898019055253826081752777099609375,
            "flow_dark_ratio": 0.03540000000000000091038288019262836314737796783447265625,
            "mass_row_ratio": 0.1963999999999999912514425659537664614617824554443359375,
            "run_ratio": 0.1786000000000000087485574340462335385382175445556640625,
            "max_row_ratio": 0.8447999999999999953814722175593487918376922607421875,
            "roi_clean_strength": 0.03930000000000000159872115546022541821002960205078125,
            "roi_muddy_strength": 0,
            "pipe_detected": true,
            "clean_flow_detected": true,
            "muddy_flow_detected": false,
            "flow_detected": true,
            "muddy_roi_detected": false,
            "clean_roi_detected": true
        },
        "pipe_3": {
            "roi": [
                0.55700000000000005062616992290713824331760406494140625,
                0.2099999999999999922284388276239042170345783233642578125,
                0.5949999999999999733546474089962430298328399658203125,
                0.270000000000000017763568394002504646778106689453125
            ],
            "px": [
                1069,
                226,
                1142,
                291
            ],
            "frame_usable": 2050,
            "frame_blue_ratio": 0.8833999999999999630517777404747903347015380859375,
            "flow_usable": 2037,
            "flow_blue_ratio": 0.907200000000000006394884621840901672840118408203125,
            "flow_nonblue_ratio": 0.092799999999999993605115378159098327159881591796875,
            "flow_white_ratio": 0.0033999999999999998105681964233326652902178466320037841796875,
            "flow_brown_ratio": 0,
            "flow_yellow_ratio": 0,
            "flow_graycyan_ratio": 0.019099999999999998923083666113598155789077281951904296875,
            "flow_dark_ratio": 0.0168999999999999983568699235547683201730251312255859375,
            "mass_row_ratio": 0.053600000000000001809663530139005160890519618988037109375,
            "run_ratio": 0.053600000000000001809663530139005160890519618988037109375,
            "max_row_ratio": 0.47060000000000001829647544582257978618144989013671875,
            "roi_clean_strength": 0.0188000000000000007382983113757290993817150592803955078125,
            "roi_muddy_strength": 0,
            "pipe_detected": true,
            "clean_flow_detected": false,
            "muddy_flow_detected": false,
            "flow_detected": false,
            "muddy_roi_detected": false,
            "clean_roi_detected": false
        },
        "pipe_4": {
            "roi": [
                0.620999999999999996447286321199499070644378662109375,
                0.2099999999999999922284388276239042170345783233642578125,
                0.66000000000000003108624468950438313186168670654296875,
                0.270000000000000017763568394002504646778106689453125
            ],
            "px": [
                1192,
                226,
                1267,
                291
            ],
            "frame_usable": 2242,
            "frame_blue_ratio": 0.987999999999999989341858963598497211933135986328125,
            "flow_usable": 2183,
            "flow_blue_ratio": 0.9959000000000000074606987254810519516468048095703125,
            "flow_nonblue_ratio": 0.004100000000000000345556916414579973206855356693267822265625,
            "flow_white_ratio": 0,
            "flow_brown_ratio": 0,
            "flow_yellow_ratio": 0,
            "flow_graycyan_ratio": 0,
            "flow_dark_ratio": 0.0005000000000000000104083408558608425664715468883514404296875,
            "mass_row_ratio": 0,
            "run_ratio": 0,
            "max_row_ratio": 0,
            "roi_clean_strength": 0,
            "roi_muddy_strength": 0,
            "pipe_detected": true,
            "clean_flow_detected": false,
            "muddy_flow_detected": false,
            "flow_detected": false,
            "muddy_roi_detected": false,
            "clean_roi_detected": false
        },
        "pipe_5": {
            "roi": [
                0.70499999999999996003197111349436454474925994873046875,
                0.200000000000000011102230246251565404236316680908203125,
                0.74499999999999999555910790149937383830547332763671875,
                0.270000000000000017763568394002504646778106689453125
            ],
            "px": [
                1353,
                216,
                1430,
                291
            ],
            "frame_usable": 2625,
            "frame_blue_ratio": 0.97030000000000005133671265866723842918872833251953125,
            "flow_usable": 2405,
            "flow_blue_ratio": 0.53969999999999995754507153833401389420032501220703125,
            "flow_nonblue_ratio": 0.460299999999999986943777230408159084618091583251953125,
            "flow_white_ratio": 0.240300000000000013589129821411916054785251617431640625,
            "flow_brown_ratio": 0.00959999999999999915900605884644392062909901142120361328125,
            "flow_yellow_ratio": 0,
            "flow_graycyan_ratio": 0.08980000000000000481836792687317938543856143951416015625,
            "flow_dark_ratio": 0.0773999999999999965805130841545178554952144622802734375,
            "mass_row_ratio": 0.92190000000000005275779813018743880093097686767578125,
            "run_ratio": 0.76559999999999994724220186981256119906902313232421875,
            "max_row_ratio": 0.56759999999999999342747969421907328069210052490234375,
            "roi_clean_strength": 0.312199999999999977529085981586831621825695037841796875,
            "roi_muddy_strength": 0.00959999999999999915900605884644392062909901142120361328125,
            "pipe_detected": true,
            "clean_flow_detected": true,
            "muddy_flow_detected": false,
            "flow_detected": true,
            "muddy_roi_detected": false,
            "clean_roi_detected": true
        }
    }
}