Home

Awesome

Count Anything

Official repo

Count Anything
Liqi, Yan
ZJU-CV, Zhejiang University / Fudan Univerisity

Count Anything (CA) project is a versatile image processing tool that combines the capabilities of Segment Anything, Semantic-Segment-Anything, and CLIP. Our solution can count any object specified by users within an image.

🚐 Count Anything (CA) engine

The CA engine consists of three steps:

🚩Examples

πŸ’» Requirements

πŸ› οΈ Installation

conda env create -f environment.yaml
conda activate ca-env

πŸš€ Quick Start

1. Run Segment Anything to get segmentation jsons for each image:

Please use --convert-to-rle to save segmentation results as .json files.

python scripts/amg.py --checkpoint sam_vit_h_4b8939.pth --model-type vit_h --convert-to-rle --input examples/AdobeStock_323574125.jpg --output output --pred-iou-thresh 0.98 --crop-n-layers 0 --crop-nms-thresh 0.3 --box-nms-thresh 0.5 --stability-score-thresh 0.7
python scripts/amg.py --checkpoint sam_vit_h_4b8939.pth --model-type vit_h --convert-to-rle --input examples/crowd_img.jpg --output output --pred-iou-thresh 0 --min-mask-region-area 0  --stability-score-thresh 0.8

2. Save the .jpg and .json in our data/examples folder:

β”œβ”€β”€ Count-Anything
|   β”œβ”€β”€ data
|   β”‚   β”œβ”€β”€ examples
|   β”‚   β”‚   β”œβ”€β”€ AdobeStock_323574125.jpg
|   β”‚   β”‚   β”œβ”€β”€ AdobeStock_323574125.json
|   β”‚   β”‚   β”œβ”€β”€ ...

3. Run our Count Anything engine with 1 GPU:

Please use --text_prompt [OBJ] to specify the customized class for counting.

python scripts/main.py --out_dir=output --world_size=1 --save_img --text_prompt="shirt" --data_dir=data/examples 
python scripts/main.py --out_dir=output --world_size=1 --save_img --text_prompt="person" --data_dir=data/crowd_examples/ 

The result is saved in output folder.

πŸ˜„ Acknowledgement

πŸ“œ Citation

If you find this work useful for your research, please cite our github repo:

@misc{yan2023count,
    title = {Count Anything},
    author = {Yan, Liqi},
    howpublished = {\url{https://github.com/ylqi/Count-Anything}},
    year = {2023}
}