automated-self-checkout icon indicating copy to clipboard operation
automated-self-checkout copied to clipboard

The Intel® Automated Self-Checkout Reference Package provides critical components required to build and deploy a self-checkout use case using Intel® hardware, software, and other open-source component...

Automated Self Checkout

Integration CodeQL GolangTest DockerImageBuild OpenSSF Scorecard GitHub Latest Stable Tag Discord

Warning
The main branch of this repository contains work-in-progress development code for the upcoming release, and is not guaranteed to be stable or working.

The source for the latest release can be found at Releases.

Table of Contents

  • Prerequisites
  • QuickStart
  • Documentation
  • Known issues
  • Disclaimer
  • Datasets & Models Disclaimer

Prerequisites

QuickStart

  1. Simply run:

(If this is the first time, it will take some time to download videos, models, docker images and build containers)

make run-demo

More detailed instructions:

  1. Build the project
make build-python-apps
  1. Download sample videos
cd benchmark-scripts
./download_sample_videos.sh
  1. Run camera simulator:

(Go back to the root directory)

cd ..
make run-camera-simulator
  1. Run object detection:

(This first command will take some time while it downloads the models for the first time)

PIPELINE_PROFILE="object_detection" RENDER_MODE=1 sudo -E ./run.sh --platform core --inputsrc rtsp://127.0.0.1:8554/camera_1

Repeat the same command changing PIPELINE_PROFILE to "classification" or "instance_segmentation"

You can check the pipeline's results by following this guide

For more advanced parameters, follow this guide

  1. Tear everything down:
make clean-all

Join the community

Discord Banner 1

Documentation

Smoke tests

Smoke tests can be run from the command line:

  • to run smoke tests for pipelines: make run-smoke-tests
  • to run smoke tests for benchmark: (cd ./benchmark-scripts || true; ./smoke_test_benchmark.sh) (this can take long time because of stream density test)

Known issues

  • Once barcode is detected and decoded, barcode label text is displayed inside the object even if barcode is not visible.
  • Overlapping object detection label (gvatrack adds its own labels)

Disclaimer

GStreamer is an open source framework licensed under LGPL. See https://gstreamer.freedesktop.org/documentation/frequently-asked-questions/licensing.html?gi-language=c. You are solely responsible for determining if your use of Gstreamer requires any additional licenses. Intel is not responsible for obtaining any such licenses, nor liable for any licensing fees due, in connection with your use of Gstreamer.

Certain third-party software or hardware identified in this document only may be used upon securing a license directly from the third-party software or hardware owner. The identification of non-Intel software, tools, or services in this document does not constitute a sponsorship, endorsement, or warranty by Intel.

Datasets & Models Disclaimer

To the extent that any data, datasets or models are referenced by Intel or accessed using tools or code on this site such data, datasets and models are provided by the third party indicated as the source of such content. Intel does not create the data, datasets, or models, provide a license to any third-party data, datasets, or models referenced, and does not warrant their accuracy or quality. By accessing such data, dataset(s) or model(s) you agree to the terms associated with that content and that your use complies with the applicable license.

Intel expressly disclaims the accuracy, adequacy, or completeness of any data, datasets or models, and is not liable for any errors, omissions, or defects in such content, or for any reliance thereon. Intel also expressly disclaims any warranty of non-infringement with respect to such data, dataset(s), or model(s). Intel is not liable for any liability or damages relating to your use of such data, datasets or models.