下载
中文
注册

单插件测试样例

  1. “${MX_SDK_HOME}/toolkit/TestPlugin/config/config.py”配置文件中配置待测插件mxpi_imageresize的配置信息。配置信息如下:
    • 如果待测插件是多输入插件,“load”配置项可以配置多个输入文件。
    • 如果待测插件是多输出插件,“dump”配置项可以配置多个输出文件。
    PipelineConfig = {
        "stream_config": {
            "deviceId": "0"
        },
        "factory": "mxpi_imageresize",      # 插件名称
        "props": {                          # 插件属性
            "dataSource": "mxpi_imagedecoder0",
            "resizeHeight": "416",
            "resizeWidth": "416"
        },
        "load": [                           # load插件的输入文件名,一个输入文件对应一个load插件
            "input/imageresize0.json"
        ],
        "dump": [                           # dump插件的输出文件名,一个输出文件对应一个dump插件
            "imageresize0-output.json"
        ]
    }
  2. 创建待测插件的数据输入文件“input/imageresize0.json”
    {
        "buffer": {
        },
        "metaData": [{
            "key": "ExternalObjects",
            "protoDataType": "MxpiObjectList"
        },
        {
            "key": "ReservedFrameInfo",
            "protoDataType": "MxpiFrameInfo"
        },
        {
            "key": "ReservedVisionList",
            "content": "mxpi_imagedecoder0"
        },
        {
            "key": "mxpi_imagedecoder0",
            "content": "{\"visionVec\":[{\"visionInfo\":{\"format\":1,\"width\":512,\"height\":512,\"widthAligned\":512,\"heightAligned\":512},\"visionData\":{\"dataPtr\":\"17695267880960\",\"dataSize\":393216,\"memType\":\"MXPI_MEMORY_DVPP\"}}]}",
            "visionData": [{
                "dataPtr": "17695267880960",  // dataPtr对应MxpiVisionData的dataPtr的地址
                "content": "vLu6ury9vr68vLy8" // 存在Device侧的图像数据,经过base64编码后的值
            }],
            "protoDataType": "MxpiVisionList"
        }]
    }
  3. 运行单插件测试工具,生成待测插件的pipeline文件,并对待测插件进行串流测试。命令如下:
    chmod +x run.sh && ./run.sh
  4. 检测单插件测试工具生成了pipeline文件。执行命令如下:
    cat pipeline/mxpi_imageresize0.pipeline
    {
        "TestPlugin": {
            "stream_config": {
                "deviceId": "0"
            },
            "mxpi_imageresize0": {
                "factory": "mxpi_imageresize",
                "next": [
                    "mxpi_dumpdata0"
                ],
                "props": {
                    "dataSource": "mxpi_imagedecoder0",
                    "resizeHeight": "416",
                    "resizeWidth": "416"
                }
            },
            "filesrc0": {
                "factory": "filesrc",
                "next": "mxpi_loaddata0",
                "props": {
                    "location": "input/imageresize0.json",
                    "blocksize": "40960000"
                }
            },
            "mxpi_loaddata0": {
                "factory": "mxpi_loaddata",
                "next": "mxpi_imageresize0:0"
            },
            "mxpi_dumpdata0": {
                "factory": "mxpi_dumpdata",
                "next": "fakesink0",
                "props": {
                    "location": "imageresize0-output.json"
                }
            },
            "fakesink0": {
                "factory": "fakesink"
            }
        }
    }
  5. 检测单插件测试工具生成了待测插件的输出文件“imageresize0-output.json”
  6. 检测串流结果,串流成功后,会显示如图1所示的成功日志。
    图1 成功日志