# Classify images Before running the pipeline command for a model, follow the required [Prerequisites](https://docs.qualcomm.com/doc/80-70018-15B/topic/ai-hub-qualcomm-im-sdk.html#prerequisites). Run the following command in the SSH shell before running the classification commands. export XDG_RUNTIME_DIR=/dev/socket/weston && export WAYLAND_DISPLAY=wayland-1 Copy to clipboard ## GoogLeNetQuantized GoogLeNet is a machine learning model that can classify images from the Imagenet dataset. It can also be used to build more complex models for specific use cases. The AI Hub model is based on [this implementation of GoogLeNetQuantized](https://github.com/pytorch/vision/blob/main/torchvision/models/googlenet.py). - Model: [googlenet_quantized.tflite](https://aihub.qualcomm.com/iot/models/googlenet_quantized) - Label: [imagenet_labels.txt](https://github.com/quic/ai-hub-models/blob/main/qai_hub_models/labels/imagenet_labels.txt) Note Classification labels may not appear when using this model for inference gst-launch-1.0 -e --gst-debug=2 \ filesrc location=/etc/media/video.mp4 ! qtdemux ! queue ! h264parse ! v4l2h264dec capture-io-mode=4 output-io-mode=4 ! video/x-raw,format=NV12 ! queue ! tee name=split \ split. ! queue ! qtivcomposer name=mixer sink_1::position="<30, 30>" sink_1::dimensions="<640, 360>" ! queue ! waylandsink sync=true fullscreen=true \ split. ! queue ! qtimlvconverter ! queue ! qtimltflite delegate=external external-delegate-path=libQnnTFLiteDelegate.so \ external-delegate-options="QNNExternalDelegate,backend_type=htp;" model=/etc/models/googlenet_quantized.tflite ! queue ! \ qtimlvclassification threshold=51.0 results=5 module=mobilenet labels=/etc/labels/imagenet_labels.txt \ extra-operation=softmax constants="Mobilenet,q-offsets=<53.0>,q-scales=<0.08174873143434525>;" ! video/x-raw,format=BGRA,width=640, height=360 ! queue ! mixer. Copy to clipboard ## Inception-V3-Quantized InceptionNetV3 is a machine learning model that can classify images from the Imagenet dataset. It can also be used to build more complex models for specific use cases. This model is post-training quantized to int8 using samples from Google’s open images dataset. The AI Hub model is based on [this implementation of Inception-v3-Quantized](https://github.com/pytorch/vision/blob/main/torchvision/models/inception.py). - Model: [inception_v3_quantized.tflite](https://aihub.qualcomm.com/iot/models/inception_v3_quantized) - Label: [imagenet_labels.txt](https://github.com/quic/ai-hub-models/blob/main/qai_hub_models/labels/imagenet_labels.txt) gst-launch-1.0 -e --gst-debug=2 \ filesrc location=/etc/media/video.mp4 ! qtdemux ! queue ! h264parse ! v4l2h264dec capture-io-mode=4 output-io-mode=4 ! video/x-raw,format=NV12 ! queue ! tee name=split \ split. ! queue ! qtivcomposer name=mixer sink_1::position="<30, 30>" sink_1::dimensions="<640, 360>" ! queue ! waylandsink sync=true fullscreen=true \ split. ! queue ! qtimlvconverter ! queue ! qtimltflite delegate=external external-delegate-path=libQnnTFLiteDelegate.so \ external-delegate-options="QNNExternalDelegate,backend_type=htp;" model=/etc/models/inception_v3_quantized.tflite ! queue ! \ qtimlvclassification threshold=51.0 results=5 module=mobilenet labels=/etc/labels/imagenet_labels.txt \ extra-operation=softmax constants="Inception,q-offsets=<33.0>,q-scales=<0.18740029633045197>;" ! video/x-raw,format=BGRA,width=640, height=360 ! queue ! mixer. Copy to clipboard ## MobileNet-v2-Quantized MobileNetV2 is a machine learning model that can classify images from the Imagenet dataset. It can also be used to build more complex models for specific use cases. The AI Hub model is based on [this implementation of MobileNet-v2-Quantized](https://github.com/tonylins/pytorch-mobilenet-v2/tree/master). - Model: [mobilenet_v2_quantized.tflite](https://aihub.qualcomm.com/iot/models/mobilenet_v2_quantized) - Label: [imagenet_labels.txt](https://github.com/quic/ai-hub-models/blob/main/qai_hub_models/labels/imagenet_labels.txt) gst-launch-1.0 -e --gst-debug=2 \ filesrc location=/etc/media/video.mp4 ! qtdemux ! queue ! h264parse ! v4l2h264dec capture-io-mode=4 output-io-mode=4 ! video/x-raw,format=NV12 ! queue ! tee name=split \ split. ! queue ! qtivcomposer name=mixer sink_1::position="<30, 30>" sink_1::dimensions="<640, 360>" ! queue ! waylandsink sync=true fullscreen=true \ split. ! queue ! qtimlvconverter ! queue ! qtimltflite delegate=external external-delegate-path=libQnnTFLiteDelegate.so \ external-delegate-options="QNNExternalDelegate,backend_type=htp;" model=/etc/models/mobilenet_v2_quantized.tflite ! queue ! \ qtimlvclassification threshold=51.0 results=5 module=mobilenet labels=/etc/labels/imagenet_labels.txt \ extra-operation=softmax constants="Mobilenet,q-offsets=<69.0>,q-scales=<0.2386164367198944>;" ! video/x-raw,format=BGRA,width=640, height=360 ! queue ! mixer. Copy to clipboard ## MobileNet-v3-Large-Quantized MobileNet-v3-Large is a machine learning model that can classify images from the Imagenet dataset. It can also be used to build more complex models for specific use cases. The AI Hub model is based on [this implementation of MobileNet-v3-Large-Quantized](https://github.com/pytorch/vision/blob/main/torchvision/models/mobilenetv3.py). - Model: [mobilenet_v3_large_quantized.tflite](https://aihub.qualcomm.com/iot/models/mobilenet_v3_large_quantized) - Label: [imagenet_labels.txt](https://github.com/quic/ai-hub-models/blob/main/qai_hub_models/labels/imagenet_labels.txt) gst-launch-1.0 -e --gst-debug=2 \ filesrc location=/etc/media/video.mp4 ! qtdemux ! queue ! h264parse ! v4l2h264dec capture-io-mode=4 output-io-mode=4 ! video/x-raw,format=NV12 ! queue ! tee name=split \ split. ! queue ! qtivcomposer name=mixer sink_1::position="<30, 30>" sink_1::dimensions="<640, 360>" ! queue ! waylandsink sync=true fullscreen=true \ split. ! queue ! qtimlvconverter ! queue ! qtimltflite delegate=external external-delegate-path=libQnnTFLiteDelegate.so \ external-delegate-options="QNNExternalDelegate,backend_type=htp;" model=/etc/models/mobilenet_v3_large_quantized.tflite ! queue ! \ qtimlvclassification threshold=51.0 results=5 module=mobilenet labels=/etc/labels/imagenet_labels.txt \ extra-operation=softmax constants="Mobilenet,q-offsets=<99.0>,q-scales=<0.18705224990844727>;" ! video/x-raw,format=BGRA,width=640, height=360 ! queue ! mixer. Copy to clipboard ## ResNet18-Quantized ResNet18 is a machine learning model that can classify images from the Imagenet dataset. It can also be used to build more complex models for specific use cases. The AI Hub model is based on [this implementation of ResNet18Quantized](https://github.com/pytorch/vision/blob/main/torchvision/models/resnet.py). - Model: [resnet18_quantized.tflite](https://aihub.qualcomm.com/iot/models/resnet18_quantized) - Label: [imagenet_labels.txt](https://github.com/quic/ai-hub-models/blob/main/qai_hub_models/labels/imagenet_labels.txt) gst-launch-1.0 -e --gst-debug=2 \ filesrc location=/etc/media/video.mp4 ! qtdemux ! queue ! h264parse ! v4l2h264dec capture-io-mode=4 output-io-mode=4 ! video/x-raw,format=NV12 ! queue ! tee name=split \ split. ! queue ! qtivcomposer name=mixer sink_1::position="<30, 30>" sink_1::dimensions="<640, 360>" ! queue ! waylandsink sync=true fullscreen=true \ split. ! queue ! qtimlvconverter ! queue ! qtimltflite delegate=external external-delegate-path=libQnnTFLiteDelegate.so \ external-delegate-options="QNNExternalDelegate,backend_type=htp;" model=/etc/models/resnet18_quantized.tflite ! queue ! \ qtimlvclassification threshold=30.0 results=5 module=mobilenet labels=/etc/labels/imagenet_labels.txt \ extra-operation=softmax constants="Resnetnet,q-offsets=<68.0>,q-scales=<0.14944985508918762>;" ! video/x-raw,format=BGRA,width=640, height=360 ! queue ! mixer. Copy to clipboard ## ResNet101-Quantized ResNet101 is a machine learning model that can classify images from the Imagenet dataset. It can also be used to build more complex models for specific use cases. The AI Hub model is based on [this implementation of ResNet101Quantized](https://github.com/pytorch/vision/blob/main/torchvision/models/resnet.py). - Model: [resnet101_quantized.tflite](https://aihub.qualcomm.com/iot/models/resnet101_quantized) - Label: [imagenet_labels.txt](https://github.com/quic/ai-hub-models/blob/main/qai_hub_models/labels/imagenet_labels.txt) gst-launch-1.0 -e --gst-debug=2 \ filesrc location=/etc/media/video.mp4 ! qtdemux ! queue ! h264parse ! v4l2h264dec capture-io-mode=4 output-io-mode=4 ! video/x-raw,format=NV12 ! queue ! tee name=split \ split. ! queue ! qtivcomposer name=mixer sink_1::position="<30, 30>" sink_1::dimensions="<640, 360>" ! queue ! waylandsink sync=true fullscreen=true \ split. ! queue ! qtimlvconverter ! queue ! qtimltflite delegate=external external-delegate-path=libQnnTFLiteDelegate.so \ external-delegate-options="QNNExternalDelegate,backend_type=htp;" model=/etc/models/resnet101_quantized.tflite ! queue ! \ qtimlvclassification threshold=51.0 results=5 module=mobilenet labels=/etc/labels/imagenet_labels.txt \ extra-operation=softmax constants="Resnet,q-offsets=<46.0>,q-scales=<0.2186901867389679 >;" ! video/x-raw,format=BGRA,width=640, height=360 ! queue ! mixer. Copy to clipboard ## ResNeXt50-Quantized ResNeXt50 is a machine learning model that can classify images from the Imagenet dataset. It can also be used to build more complex models for specific use cases. The AI Hub model is based on [this implementation of ResNeXt50Quantized](https://github.com/pytorch/vision/blob/main/torchvision/models/resnet.py). - Model: [resnext50_quantized.tflite](https://aihub.qualcomm.com/iot/models/resnext50_quantized) - Label: [imagenet_labels.txt](https://github.com/quic/ai-hub-models/blob/main/qai_hub_models/labels/imagenet_labels.txt) gst-launch-1.0 -e --gst-debug=2 \ filesrc location=/etc/media/video.mp4 ! qtdemux ! queue ! h264parse ! v4l2h264dec capture-io-mode=4 output-io-mode=4 ! video/x-raw,format=NV12 ! queue ! tee name=split \ split. ! queue ! qtivcomposer name=mixer sink_1::position="<30, 30>" sink_1::dimensions="<640, 360>" ! queue ! waylandsink sync=true fullscreen=true \ split. ! queue ! qtimlvconverter ! queue ! qtimltflite delegate=external external-delegate-path=libQnnTFLiteDelegate.so \ external-delegate-options="QNNExternalDelegate,backend_type=htp;" model=/etc/models/resnext50_quantized.tflite ! queue ! \ qtimlvclassification threshold=35.0 results=5 module=mobilenet labels=/etc/labels/imagenet_labels.txt \ extra-operation=softmax constants="Resnetnet,q-offsets=<30.0>,q-scales=<0.06314703077077866>;" ! video/x-raw,format=BGRA,width=640, height=360 ! queue ! mixer. Copy to clipboard ## ResNeXt101-Quantized ResNeXt101 is a machine learning model that can classify images from the Imagenet dataset. It can also be used to build more complex models for specific use cases. The AI Hub model is based on [this implementation of ResNeXt101Quantized](https://github.com/pytorch/vision/blob/main/torchvision/models/resnet.py). - Model: [resnext101_quantized.tflite](https://aihub.qualcomm.com/iot/models/resnext101_quantized) - Label: [imagenet_labels.txt](https://github.com/quic/ai-hub-models/blob/main/qai_hub_models/labels/imagenet_labels.txt) gst-launch-1.0 -e --gst-debug=2 \ filesrc location=/etc/media/video.mp4 ! qtdemux ! queue ! h264parse ! v4l2h264dec capture-io-mode=4 output-io-mode=4 ! video/x-raw,format=NV12 ! queue ! tee name=split \ split. ! queue ! qtivcomposer name=mixer sink_1::position="<30, 30>" sink_1::dimensions="<640, 360>" ! queue ! waylandsink sync=true fullscreen=true \ split. ! queue ! qtimlvconverter ! queue ! qtimltflite delegate=external external-delegate-path=libQnnTFLiteDelegate.so \ external-delegate-options="QNNExternalDelegate,backend_type=htp;" model=/etc/models/resnext101_quantized.tflite ! queue ! \ qtimlvclassification threshold=35.0 results=5 module=mobilenet labels=/etc/labels/imagenet_labels.txt \ extra-operation=softmax constants="Resnetnet,q-offsets=<37.0>,q-scales=<0.1848793774843216>;" ! video/x-raw,format=BGRA,width=640, height=360 ! queue ! mixer. Copy to clipboard ## Shufflenet-v2-Quantized ShufflenetV2 is a machine learning model that can classify images from the Imagenet dataset. It can also be used to build more complex models for specific use cases. The AI Hub model is based on [this implementation of Shufflenet-v2Quantized](https://github.com/pytorch/vision/blob/main/torchvision/models/shufflenetv2.py). - Model: [shufflenet_v2_quantized.tflite](https://aihub.qualcomm.com/iot/models/shufflenet_v2_quantized) - Label: [imagenet_labels.txt](https://github.com/quic/ai-hub-models/blob/main/qai_hub_models/labels/imagenet_labels.txt) Note Classification labels may not appear when using this model for inference gst-launch-1.0 -e --gst-debug=2 \ filesrc location=/etc/media/video.mp4 ! qtdemux ! queue ! h264parse ! v4l2h264dec capture-io-mode=4 output-io-mode=4 ! video/x-raw,format=NV12 ! queue ! tee name=split \ split. ! queue ! qtivcomposer name=mixer sink_1::position="<30, 30>" sink_1::dimensions="<640, 360>" ! queue ! waylandsink sync=true fullscreen=true \ split. ! queue ! qtimlvconverter ! queue ! qtimltflite delegate=external external-delegate-path=libQnnTFLiteDelegate.so \ external-delegate-options="QNNExternalDelegate,backend_type=htp;" model=/etc/models/shufflenet_v2_quantized.tflite ! queue ! \ qtimlvclassification threshold=35.0 results=5 module=mobilenet labels=/etc/labels/imagenet_labels.txt \ extra-operation=softmax constants="Resnetnet,q-offsets=<69.0>,q-scales=<0.14428946375846863>;" ! video/x-raw,format=BGRA,width=640, height=360 ! queue ! mixer. Copy to clipboard ## SqueezeNet-1\_1-Quantized SqueezeNet is a machine learning model that can classify images from the Imagenet dataset. It can also be used to build more complex models for specific use cases. The AI Hub model is based on [this implementation of SqueezeNet-1_1Quantized](https://github.com/pytorch/vision/blob/main/torchvision/models/squeezenet.py). - Model: [squeezenet1_1_quantized.tflite](https://aihub.qualcomm.com/iot/models/squeezenet1_1_quantized) - Label: [imagenet_labels.txt](https://github.com/quic/ai-hub-models/blob/main/qai_hub_models/labels/imagenet_labels.txt) Note Classification labels may not appear when using this model for inference gst-launch-1.0 -e --gst-debug=2 \ filesrc location=/etc/media/video.mp4 ! qtdemux ! queue ! h264parse ! v4l2h264dec capture-io-mode=4 output-io-mode=4 ! video/x-raw,format=NV12 ! queue ! tee name=split \ split. ! queue ! qtivcomposer name=mixer sink_1::position="<30, 30>" sink_1::dimensions="<640, 360>" ! queue ! waylandsink sync=true fullscreen=true \ split. ! queue ! qtimlvconverter ! queue ! qtimltflite delegate=external external-delegate-path=libQnnTFLiteDelegate.so \ external-delegate-options="QNNExternalDelegate,backend_type=htp;" model=/etc/models/squeezenet1_1_quantized.tflite ! queue ! \ qtimlvclassification threshold=25.0 results=5 module=mobilenet labels=/etc/labels/imagenet_labels.txt \ extra-operation=softmax constants="Resnetnet,q-offsets=<0.0>,q-scales=<0.16435524821281433>;" ! video/x-raw,format=BGRA,width=640, height=360 ! queue ! mixer. Copy to clipboard ## WideResNet50-Quantized WideResNet50 is a machine learning model that can classify images from the Imagenet dataset. It can also be used to build more complex models for specific use cases. The AI Hub model is based on [this implementation of WideResNet50-Quantized](https://github.com/pytorch/vision/blob/main/torchvision/models/resnet.py). - Model: [wideresnet50_quantized.tflite](https://aihub.qualcomm.com/iot/models/wideresnet50_quantized) - Label: [imagenet_labels.txt](https://github.com/quic/ai-hub-models/blob/main/qai_hub_models/labels/imagenet_labels.txt) gst-launch-1.0 -e --gst-debug=2 \ filesrc location=/etc/media/video.mp4 ! qtdemux ! queue ! h264parse ! v4l2h264dec capture-io-mode=4 output-io-mode=4 ! video/x-raw,format=NV12 ! queue ! tee name=split \ split. ! queue ! qtivcomposer name=mixer sink_1::position="<30, 30>" sink_1::dimensions="<640, 360>" ! queue ! waylandsink sync=true fullscreen=true \ split. ! queue ! qtimlvconverter ! queue ! qtimltflite delegate=external external-delegate-path=libQnnTFLiteDelegate.so \ external-delegate-options="QNNExternalDelegate,backend_type=htp;" model=/etc/models/wideresnet50_quantized.tflite ! queue ! \ qtimlvclassification threshold=35.0 results=5 module=mobilenet labels=/etc/labels/imagenet_labels.txt \ extra-operation=softmax constants="Resnet,q-offsets=<44.0>,q-scales=<0.1439792960882187>;" ! video/x-raw,format=BGRA,width=640,height=360 ! queue ! mixer. Copy to clipboard Last Published: Oct 13, 2025 [Previous Topic Use AI Hub models and labels with the GStreamer API](https://docs.qualcomm.com/bundle/publicresource/80-70018-15B/topics/ai-hub-qualcomm-im-sdk.md) [Next Topic Detect objects](https://docs.qualcomm.com/bundle/publicresource/80-70018-15B/topics/object-detection.md)