Comments (5)
Hi @mattyamonaca, you can already do it with exactly the same code as SAM :)
from segment_anything import SamPredictor, sam_model_registry, SamAutomaticMaskGenerator
# Read image
image = cv2.imread("dog.jpg")
image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)
# Load HQ-SAM
sam_checkpoint = "sam_hq_vit_h.pth"
model_type = "vit_h"
device = "cuda"
sam = sam_model_registry[model_type](checkpoint=sam_checkpoint)
sam.to(device=device)
# Generate segmentation
mask_generator = SamAutomaticMaskGenerator(sam)
masks = mask_generator.generate(image)
This gives you a list of masks. Each mask is a dictionary for which the "segmentation"
key gives you a boolean segmentation mask. You can visualize them with the show_anns()
function provided by SAM:
def show_anns(anns):
if len(anns) == 0:
return
sorted_anns = sorted(anns, key=(lambda x: x['area']), reverse=True)
ax = plt.gca()
ax.set_autoscale_on(False)
img = np.ones((sorted_anns[0]['segmentation'].shape[0], sorted_anns[0]['segmentation'].shape[1], 4))
img[:,:,3] = 0
for ann in sorted_anns:
m = ann['segmentation']
color_mask = np.concatenate([np.random.random(3), [0.35]])
img[m] = color_mask
ax.imshow(img)
plt.figure(figsize=(12,7))
plt.imshow(image)
show_anns(masks)
plt.axis('off')
plt.show()
from sam-hq.
Hi @SuroshAhmadZobair, thank you for pointing this out, it should work now :) I had forgot to call the generate()
function
from sam-hq.
Thanks!
from sam-hq.
Hi
Thanks for the scrip @benji2264 .
When i run the code in jupyter, i get the following error:
TypeError: 'SamAutomaticMaskGenerator' object is not callable
any insight?
cheers!
from sam-hq.
Thanks! We also provide a notebook now.
from sam-hq.
Related Issues (20)
- RuntimeError: Unexpected error from cudaGetDeviceCount(). Did you run some cuda functions before calling NumCudaDevices() that might have already set an error? Error 804: forward compatibility was attempted on non supported HW
- Can we add support for transformers? HOT 3
- RuntimeError: Sizes of tensors must match except in dimension 1. Expected size 1 but got size 13 for tensor number 1 in the list. HOT 1
- Training problem: During the training of sam-hq, the iou output of the val set is very high, 0.98; but in eval mode, the iou of the val set is only 0.48
- Segment Anything CPP Wrapper for macOS
- Can sam-hq perform breakpoint training: continue training on the already trained sam-hq, or continue training on the official sam-hq weights HOT 2
- Alternative implementation in Refiners
- About interm_embeddings
- Runtime error in Colab HOT 1
- How to train vit_tiny (Light HQ-SAM for real-time need): ViT-Tiny HQ-SAM model?
- Why can't we achieve the demonstration effect? There are three tennis rackets in the incoming image, and only one mask is returned
- Visualization of Figure 6
- can't we get candidates as original sam?
- About the issue of positive and negative sample pairs HOT 1
- Does SAM_HQ support batch input?
- Positive negative point inputs for SAM-hq
- no such pth file
- RuntimeError
- Evaluation for instance segmentation
- High-level question: is SAM-HQ suited for fine-tuning on specific tasks? HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from sam-hq.