Skip to main content

Remove identifying information from sign language poses

Project description

Pose Anonymization

Remove identifying information from sign language poses

Usage

pip install git+https://github.com/sign-language-processing/pose-anonymization

To anonymize a pose sequence:

anonymize_pose --input="example.pose" --output="example_anonymized.pose" [--appearance="specific_signer.pose"]

The --appearance option allows to transfer the pose sequence to a specific signer's appearance. (This is useful for models trained on specific signers.)

In python:

from pose_format import Pose

from pose_anonymization.appearance import remove_appearance

with open("example.pose", "rb") as f:
    pose = Pose.read(f.read())

anonymized_pose = remove_appearance(pose)

Methods

Appearance Based Anonymization (Naive)

Currently implemented in this repository.

Using the mean of sign language poses calculated by sign-language-processing/sign-vq, we can anonymize a pose sequence by assuming the first frame is only the appearance of the person, and remove it from the rest of the frames, then add the mean.

(Example generated using ./scripts/create_example.sh, transferred to assets/example/interpreter.pose)

Sign Original___ Anonymized_ Transferred
Kleine kleine kleine kleine
Kinder kinder kinder kinder
Essen essen essen essen
Pizza pizza pizza pizza

Information Theoretic Perfect Anonymization

This is not yet implemented in this repository.

There exists identifying information in every sign language utterance. From appearance, to prosody, movement pattern, and choice of signs.

Therefore, if we want to remove all identifying information, we need to remove all information. However we can decide on a tradeoff between privacy and utility, and remove all information except for the choice of signs.

Pipeline approach:

This pipeline guarantees anonymization from an information theoretic perspective, as the only information that is preserved is the choice of signs.

Citing this work

@misc{moryossef2024anonymization, 
    title={pose-anonymization: Remove identifying information from sign language poses},
    author={Moryossef, Amit},
    howpublished={\url{https://github.com/sign-language-processing/pose-anonymization}},
    year={2024}
}

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

pose_anonymization-0.0.1.tar.gz (58.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pose_anonymization-0.0.1-py3-none-any.whl (57.7 kB view details)

Uploaded Python 3

File details

Details for the file pose_anonymization-0.0.1.tar.gz.

File metadata

  • Download URL: pose_anonymization-0.0.1.tar.gz
  • Upload date:
  • Size: 58.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pose_anonymization-0.0.1.tar.gz
Algorithm Hash digest
SHA256 c625fce7563b16803593a63f9b57cf98022982e64a17e3dbd3e93dbe87fff6f4
MD5 fe0941a7814da6cc0b72152932543f45
BLAKE2b-256 d11a4dee9c080abcdf63140b78c5356a7502333e48745e70589cfb2e40aad002

See more details on using hashes here.

Provenance

The following attestation bundles were made for pose_anonymization-0.0.1.tar.gz:

Publisher: release.yaml on sign-language-processing/pose-anonymization

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pose_anonymization-0.0.1-py3-none-any.whl.

File metadata

File hashes

Hashes for pose_anonymization-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 18f1a63ba5f981d25aa2e253ecff0a6a3ced924dc5f3876cd33e257012a3ba09
MD5 ac714871068e3a0217fae748fcc136e9
BLAKE2b-256 fcad517f90e4eedaafefe52a0bfff37d9f6afbec64713c7fdd85b4c1014605f3

See more details on using hashes here.

Provenance

The following attestation bundles were made for pose_anonymization-0.0.1-py3-none-any.whl:

Publisher: release.yaml on sign-language-processing/pose-anonymization

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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