• Stars
    star
    291
  • Rank 137,288 (Top 3 %)
  • Language
    Python
  • License
    Apache License 2.0
  • Created about 1 year ago
  • Updated 3 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Segment Anything combined with CLIP

Segment Anything with Clip

[HuggingFace Space] | [COLAB] | [Demo Video]

Meta released a new foundation model for segmentation tasks. It aims to resolve downstream segmentation tasks with prompt engineering, such as foreground/background points, bounding box, mask, and free-formed text. However, the text prompt is not released yet.

Alternatively, I took the following steps:

  1. Get all object proposals generated by SAM (Segment Anything Model).
  2. Crop the object regions by bounding boxes.
  3. Get cropped images' features and a query feature from CLIP.
  4. Calculate the similarity between image features and the query feature.
# How to get the similarity.
preprocessed_img = preprocess(crop).unsqueeze(0)
tokens = clip.tokenize(texts)
logits_per_image, _ = model(preprocessed_img, tokens)
similarity = logits_per_image.softmax(-1)

How to run on local

Anaconda is required before start setup.

make env
conda activate segment-anything-with-clip
make setup
# this executes GRadio server.
make run

Open http://localhost:7860/

Successive Works

  • Fast Segment Everything: Re-implemented Everything algorithm in iterative manner that is better for CPU only environments. It shows comparable results to the original Everything within 1/5 number of inferences (e.g. 1024 vs 200), and it takes under 10 seconds to search for masks on a CPU upgrade instance (8 vCPU, 32GB RAM) of Huggingface space.
  • Fast Segment Everything with Text Prompt: This example based on Fast-Segment-Everything provides a text prompt that generates an attention map for the area you want to focus on.
  • Fast Segment Everything with Image Prompt: This example based on Fast-Segment-Everything provides an image prompt that generates an attention map for the area you want to focus on.
  • Fast Segment Everything with Drawing Prompt: This example based on Fast-Segment-Everything provides a drawing prompt that generates an attention map for the area you want to focus on.

References

More Repositories

1

rainbow-is-all-you-need

Rainbow is all you need! A step-by-step tutorial from DQN to Rainbow
Jupyter Notebook
1,731
star
2

handwritten_digit_recognition

Handwritten digit recognition with MNIST & Keras
Python
74
star
3

mnist-fastapi-celery-triton

Simple example of FastAPI + Celery + Triton for benchmarking
Python
56
star
4

reinforcement_learning_an_introduction

Summary (in Korean) and python implementation of 'Reinforcement Learning: An Introduction' written by Sutton & Barto
Jupyter Notebook
56
star
5

mnist-fastapi-aio-triton

Simple example of FastAPI + gRPC AsyncIO + Triton
Python
49
star
6

cs231n_assignments

[Assignments] CS231N: Convolutional Neural Networks for Visual Recognition (2016 & 2017)
Jupyter Notebook
46
star
7

yolo-world-with-efficientvit-sam

YOLO-World + EfficientViT SAM
Python
23
star
8

TIL

Today I Learned
Jupyter Notebook
21
star
9

serving-codegen-gptj-triton

Serving Example of CodeGen-350M-Mono-GPTJ on Triton Inference Server with Docker and Kubernetes
Python
19
star
10

python-monorepo-template

Python monorepo template with Pants
Python
16
star
11

url-shortener

URL shortener service on hostOS / docker-compose / k8s.
Mustache
16
star
12

triton-inference-server-practice

Archives for Triton Inference Server Practices
Python
15
star
13

locust-k8s

Locust on k8s example for scalable load tests
Makefile
13
star
14

producer-consumer-fastapi-celery

Producer-consumer with FastAPI and Celery
Python
12
star
15

echo-grpc-triton

Inference API server with echo and gRPC to triton server (golang)
Go
11
star
16

mnist-api-server

Mnist API server w/ FastAPI
Python
8
star
17

Curt-Park

4
star
18

nlp-practice

Python
3
star
19

style_transfer_keras

Style Transfer with Keras
Python
3
star
20

portfolio_opt

My portfolio optimizer
Python
3
star
21

JWTest

Simple unit test framework made with C++ macro.
C++
2
star
22

github-actions-for-ci

JavaScript
2
star
23

reddit-posts-to-slack

Send Reddit HOT Posts to Slack
Python
2
star
24

atari2600-rllib

Atari2600 Training / Evaluation with RLlib
Python
1
star
25

hello-github-actions

Dockerfile
1
star