Skip to content

shirayu/img2tags

Repository files navigation

img2tags

PyPI version Python Versions License Downloads

CI Typos

Tag images by using ONNX Runtime. The current default model is SmilingWolf/wd-v1-4-moat-tagger-v2. It works fine for anime images.

Setup

# For CPU
pip install -U 'img2tags[cpu]'

# For GPU
pip install -U 'img2tags[gpu]'

# If you use CUDA 12.2, the following packages may be needed
sudo apt install libcufft10 libcudart11.0

Run

# Generate .txt file
img2tags -i input_dir

# Generate .json file in another directory with CPU
#   --offline: Do not fetch model files (You must have downloaded that model)
img2tags --ext json \
    --cpu \
    -i input_dir \
    -o output_dir \
    --offline

# Output to a single file (JSONL)
img2tags --ext jsonl \
    --cpu \
    -i input_dir \
    -o output_filename.jsonl \
    --offline

# You can use filelist
img2tags --ext jsonl \
    --cpu \
    -i target_file_list.txt \
    -o output_filename.jsonl \
    --offline

The values of default thresholds are stored in config.json in each model like this. You can set values in JSON format like --th {"0": 0.3, "4":0.2, "9":0.3}.

LICENSE

Apache 2.0

Some codes are based on codes in the following project.

References