facebookresearch / facebookresearch/sam3

Can't perform PCS with bounding box prompts on videos

Open
#405 5 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
11.7k
Forks
1.8k
PR merge metrics
No merged PRs in 30d

Description

Hi and thank you for the amazing work.

I've been trying to perform video PCS with just bbox prompt on the provided test video, but the model is not propagating the predictions through frames.

I'm adding box promt to first frame as:
`
out = video_predictor.handle_request(
request=dict(
type="add_prompt",
session_id=session_id,
frame_index=0,
text=None,
points=None,
point_labels=None,
bounding_boxes= np.array([[0.3953, 0.2667, 0.1164, 0.5736]]) ,
bounding_box_labels=[1],
)
)
`
and If I display this ouput it is actually doing the job and all 4 people are actually segmented:
![Image](https://github.com/user-attachments/assets/497f168f-7ba1-4149-bd93-167ea75d9d05)

If, instead, I do propagate across the entire video, it seems that no instance is detected at all:

`outputs_per_frame = {}
for response in predictor.handle_stream_request(
request=dict(
type="propagate_in_video",
session_id=session_id,
)
):
outputs_per_frame[response["frame_index"]] = response["outputs"]`
same frame after propagation:
Image

I do not want to do PVS SAM2-style, and I'm understanding that SAM3 should be able to perform PCS retrieving the semantic from visual prompts (also because within the prompted frame it is working), so am I doing something wrong, or is PCS on video not possible without text?

Contributor guide

Open the contributing guide

Research direction

Reproduce the behavior with the provided test video using video_predictor.handle_request for add_prompt with bounding_boxes, then handle_stream_request with propagate_in_video. Compare the prompted frame outputs with the propagated frames and inspect the request handling around these entry points. Done means either bbox-only propagation retains the detected instances across frames or the limitation and required prompt format are clearly documented.

Written by the indexing model from the issue text.

Assessment

Tech stack
numpy, python
Domain
computer-vision, machine-learning
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.