semvec/pypi-packages huggingface dataset:
genomic-tokenizer 0.1.0
Genomic Tokenizer
Requires Python: <4.0,>=3.10

# :chains: Genomic Tokenizer

## About
This is a tokenizer for DNA :chains: that aligns with the central dogma of molecular biology. You can use this tokenizer for training genomic transformer models. [See the BERT and GPT2 models trained on human genome](https://github.com/dermatologist/codon-llm). This is not tested yet, but feel free to try it and [improve it](/CONTRIBUTING.md). Please [cite](#books-cite) / [contact me](https://nuchange.ca/contact) if you use it in your research.

## 🚀 Installation

```bash
pip install git+https://github.com/dermatologist/genomic-tokenizer.git
```

## 🔧 Example usage

```python
from genomic_tokenizer import GenomicTokenizer
# Fasta header if present is ignored.
fasta = """
AGGCGAGGCGCGGGCGGAGGCGGTGCGCGGGCGGAGGCGGGGCGCGGAGATGTGGCGGAGGTGGAGGCGG
AGGCGTAGCCGCCCCTGGGGACGTCATTGGTGGCGGAAGCAATCGCCGGCAACCAGCTGTAAGCGAGGTA
GGCTCACTCGGGCACGGAGGGTGCGGGTGAGAAAGGGAACGATTTGCTAGGAGTGTATGCGCCCGTGCTA
"""
model_max_length = 2048
tokenizer = GenomicTokenizer(model_max_length)
tokens = tokenizer(fasta)
print(tokens)
```

### ✨ Output
```
{'input_ids': [2, 7, 12, 17, 19, 16, 1, 7, 20, 6, 12, 21, 16, 12, 20, 12, 12, 8, 12, 1, 10, 20, 10, 20, 11, 7, 20, 21, 23, 8, 7, 20, 7, 6, 12, 21, 19, 10, 11, 16, 19, 7, 1, 22, 7, 1, 19, 21, 7, 16, 1, 21, 12, 23, 19, 12, 20, 6, 1],
'token_type_ids': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
'attention_mask': [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}
```

## 🔧 Tokenization algorithm
* Identify the first occurence of the start codon `ATG`.
* Split the sequence into codons of length 3 starting from the start codon.
* Convert synonymous codons to the same token.
* Convert stop codons to `[SEP]` token.

## 🧠 Inspired by

* https://github.com/HazyResearch/hyena-dna/blob/main/src/dataloaders/datasets/hg38_char_tokenizer.py
* https://github.com/dariush-bahrami/character-tokenizer/blob/master/charactertokenizer/core.py
* And the *CanineTokenizer* in transformers package.
* [Read this article ](https://www.ncbi.nlm.nih.gov/pmc/articles/PMC11055402/) for details on more elaborate tokenization strategies.

## :books: Cite

```
@misc{genomic-tokenizer,
  author = {Bell Raj Eapen},
  title = {Genomic Tokenizer},
  year = {2024},
  publisher = {GitHub},
  journal = {GitHub repository},
  howpublished = {\url{
    https://github.com/dermatologist/genomic-tokenizer
    }},
}
```

## Give us a star ⭐️
If you find this project useful, give us a star. It helps others discover the project.

## Contributors

* [Bell Eapen](https://nuchange.ca) | [![Twitter Follow](https://img.shields.io/twitter/follow/beapen?style=social)](https://twitter.com/beapen)
SteganoX-Hidden-Messages-in-Images 1.0.0
A powerful steganography tool for hiding and extracting messages in images.
Requires Python: >=3.6

# 🌟 SteganoX: Hidden Messages in Images 🕵️‍♂️

SteganoX is a powerful steganography tool that lets you **hide and extract secret messages** from images effortlessly. Whether you're a cybersecurity enthusiast, privacy advocate, or just having fun with hidden messages, **SteganoX has you covered!** 🔒✨

---
## 🚀 Features
✅ **Encode** secret messages into images. <br/>
✅ **Decode** hidden messages from images. <br/>
✅ **Command-line interface** for seamless automation. <br/>
✅ **Interactive mode** for quick and easy usage. <br/>
✅ **Lightweight & Efficient** – No unnecessary bloat! <br/>

---
## 📥 Installation

Clone the repository and install dependencies:
```sh
git clone https://github.com/AdityaBhatt3010/SteganoX-Hidden-Messages-in-Images.git
cd SteganoX-Hidden-Messages-in-Images
python setup.py install
```
or simply run
```sh
git clone https://github.com/AdityaBhatt3010/SteganoX-Hidden-Messages-in-Images.git
cd SteganoX-Hidden-Messages-in-Images
pip install -r requirements.txt
```

---
## 🎯 Usage

### 🔹 Command-Line Mode

#### 🔎 Help Menu:
```sh
python SteganoX.py -h
```
![Image](https://github.com/user-attachments/assets/82eab841-d965-4925-b153-299d13306015) <br/>

#### 🔐 Encoding a Message:
```sh
python SteganoX.py -e <image_path> "<secret_message>" <output_image_path>
```
**Example:**
```sh
python SteganoX.py -e input.png "This is a secret!" output.png
```
![Image](https://github.com/user-attachments/assets/1c2975ea-465d-462c-920f-41052bb5cdae) <br/>

#### 🔎 Decoding a Message:
```sh
python SteganoX.py -d <image_path>
```
**Example:**
```sh
python SteganoX.py -d output.png
```
![Image](https://github.com/user-attachments/assets/2a846be8-3ad4-4f9a-a81e-9a8eb2f07a77) <br/>

---
### 🖥️ Minimal Interactive Mode
If you prefer a **guided experience**, run the interactive mode:
```sh
python SteganoX_Minimal.py
```
You'll be prompted to enter an image path, your message (if encoding), and an output file.

---
## 📌 Dependencies
- **Python 3.x** 🐍
- **Pillow** 🖼️ (Image processing)
- **pyfiglet** 🎭 (Cool ASCII banners)
- **termcolor** 🎨 (Stylish CLI output)

Install all dependencies with:
```sh
pip install -r requirements.txt
```

### 🎯 Sample Images:

#### 🔐 Imput Image:
![Image](https://github.com/user-attachments/assets/30ea5908-91c9-41c7-9012-05c8a0e7d975) <br/>

#### 🔎 Output Image:
![Image](https://github.com/user-attachments/assets/358c6782-6808-4f07-ade7-a45908b538c2) <br/>

Image Credit: [needpix](https://www.needpix.com/photo/29659/copyright-free-pd-cc0-free-music-license-symbol-free-vector-graphics-free-pictures-free-photos) <br/>
[Clker-Free-Vector-Images - pixabay.com, Copyright-Free PD CC0 Free Photo Available](https://www.needpix.com/photo/29659/copyright-free-pd-cc0-free-music-license-symbol)

---
## 👨‍💻 Author
Developed with ❤️ by **Aditya Bhatt**