Example #1
0
    tensor_img = torch.from_numpy(img)
    img = convert_rgb_to_iyu2(tensor_img)
    npimg = img.numpy()
    new_npimg = np.transpose(npimg, (1, 2, 0))
    fname = imgname + ".bin"
    save_bin(fname, new_npimg)
    new_data = ary2bin(new_npimg)

    # USE cv COLOR_BGR2YUV converter
    # img_bgr_300 = cv2.resize(img_bgr, dsize=(304, 300), interpolation=cv2.INTER_LINEAR)
    # img_yuv_300 = cv2.cvtColor(img_bgr_300, cv2.COLOR_BGR2YUV)
    # new_data_yuv = ary2bin_yuv(img_yuv_300)
    # fname_yuv = imgname + "py.bin"
    # save_yuv(fname_yuv, img_yuv_300)

    socket = CLI.NetCon('localhost', 5557)
    CLI.setDataRSP(socket, STR_NPU_DATA_INPUT_BUF, 304 * 300 * 3, new_data)
    flag = b'\x01\x00\x00\x00'
    CLI.setDataRSP(socket, STR_NPU_DATA_FLAG_BUF, 4, flag)

    while True:
        flag = CLI.getDataRSP(socket, STR_NPU_DATA_FLAG_BUF, 4)
        if flag != b'\x01\x00\x00\x00':
            break
        time.sleep(0.1)

    result(socket, img_bgr)
    print(imgname)
    cv2.imshow("VideoFrame", img_bgr)
    cv2.waitKey(1)