Skip to main content

ISCC - Semantic Code Image

Project description

ISCC - Semantic Image-Code

Version Downloads

iscc-sci is a proof of concept implementation of a semantic Image-Code for the ISCC (International Standard Content Code). Semantic Image-Codes are designed to capture and represent the semantic content of images for improved similarity detection.

[!CAUTION] This is an early proof of concept. All releases with release numbers below v1.0.0 may break backward compatibility and produce incompatible Semantic Image-Codes.

What is ISCC Semantic Image-Code

The ISCC framework already comes with an Image-Code that is based on perceptual hashing and can match near duplicates. The ISCC Semantic Image-Code is planned as a new additional ISCC-UNIT focused on capturing a more abstract and broad semantic similarity. As such the Semantic Image-Code is engineered to be robust against a broader range of variations that cannot be matched with the perceptual Image-Code.

Features

  • Semantic Similarity: Leverages deep learning models to generate codes that reflect the semantic content of images.
  • Bit-Length Flexibility: Supports generating codes of various bit lengths (up to 256 bits), allowing for adjustable granularity in similarity detection.
  • ISCC Compatible: Generates codes that are fully compatible with the ISCC specification, facilitating integration with existing ISCC-based systems.

Installation

Before you can install iscc-sci, you need to have Python 3.8 or newer installed on your system. Install the library as any other python package:

pip install iscc-sci

Usage

To generate a Semantic Image-Code for an image, use the code_image_semantic function. You can specify the bit length of the code to control the level of granularity in the semantic representation.

import iscc_sci as sci

# Generate a 64-bit ISCC Semantic Image-Code for an image file
image_file_path = "path/to/your/image.jpg"
semantic_code = sci.code_image_semantic(image_file_path, bits=64)

print(semantic_code)

How It Works

iscc-sci uses a pre-trained deep learning model based on the 1st Place Solution of the Image Similarity Challenge (ISC21) to create semantic embeddings of images. The model generates a feature vector that captures the essential characteristics of the image. This vector is then binarized to produce a Semantic Image-Code that is robust to variations in image presentation but sensitive to content differences.

Development

This is a proof of concept and welcomes contributions to enhance its capabilities, efficiency, and compatibility with the broader ISCC ecosystem. For development, you'll need to install the project in development mode using Poetry.

git clone https://github.com/iscc/iscc-sci.git
cd iscc-sci
poetry install

Contributing

Contributions are welcome! If you have suggestions for improvements or bug fixes, please open an issue or pull request. For major changes, please open an issue first to discuss what you would like to change.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

iscc_sci-0.1.0.tar.gz (10.0 kB view details)

Uploaded Source

Built Distribution

iscc_sci-0.1.0-py3-none-any.whl (10.6 kB view details)

Uploaded Python 3

File details

Details for the file iscc_sci-0.1.0.tar.gz.

File metadata

  • Download URL: iscc_sci-0.1.0.tar.gz
  • Upload date:
  • Size: 10.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.6.1 CPython/3.11.1 Windows/10

File hashes

Hashes for iscc_sci-0.1.0.tar.gz
Algorithm Hash digest
SHA256 a6a9273200c087266093aebabbaa254f36acc7f2810f1f4c049f7236ede099ff
MD5 3acb6124591563da174f09602f514dcd
BLAKE2b-256 4f02d117bc9d847b99c360baa1fa55d15691edaddb08880954170c7ebad8a772

See more details on using hashes here.

File details

Details for the file iscc_sci-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: iscc_sci-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 10.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.6.1 CPython/3.11.1 Windows/10

File hashes

Hashes for iscc_sci-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4d9716ed246324cd797752b496a78cced7b690211981800eba86659de7cff463
MD5 98b19f9cf4a4ddd78436f498b98efa15
BLAKE2b-256 399a07cc0a9485f1ce85cf42af0c1f2a9f9564e922b9863d94cf432c18d1b6a8

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page