r/computervision • • 2h ago

Showcase I am building a $67 camera module that does SLAM and VPS onboard

Enable HLS to view with audio, or disable this notification

12 Upvotes

Mighty is a SLAM module which helps robots and drones navigate indoors and at low altitudes, but SLAM generally struggles once a drone flies too high.

I’m now working on a VPS mode that uses onboard maps to localize using just the camera, without GPS.

The crazy part? All of this runs on a $67 module.


r/computervision • • 2h ago

Help: Project Video to 3D

2 Upvotes

I am trying to build something in my website I want to make user able to record his room or apartment and then make it 3D with calce it's area but real view. which models I could use ?


r/computervision • • 46m ago

Showcase Single-camera padel analysis with RF-DETR, TrackNet V3 and audio–visual hit detection

Enable HLS to view with audio, or disable this notification

• Upvotes

I’m building PadelOptic to analyse padel footage from a single camera. The video shows match analysis followed by individual stroke analysis.

The match pipeline uses:

• RF-DETR Nano for player and racket detection, with shirt colour and court side used to maintain player identities.
• TrackNet V3 for ball tracking, fine-tuned on padel footage using labels filtered by confidence and motion consistency.
• Homography and 3D court geometry to map positions onto the court and filter out-of-court detections.
• Racket-contact audio matched with ball and player positions to detect hits.

In an initial evaluation on professional match footage, hitter identification reached 91% accuracy.

The coach mode uses MediaPipe Pose Full to measure elbow angle, contact height, trunk rotation, knee bend and follow-through. Its browser demo processes video locally, with GPU acceleration where supported.

For the match footage, I marked the court corners manually; tracking and analysis outputs have no manual corrections. Displayed speeds are court-plane lower-bound estimates, not reconstructed 3D ball speeds.

I’d appreciate feedback on the approach, especially from anyone working with small-object tracking. What has helped you handle occlusion and glass reflections across different camera setups?

Demo: https://padeloptic.com

I’d love to hear your feedback and ideas for improving it.

Footage: Pro Padel League (PPL), The City’s Cup 2025 broadcast; “Forehand volleys on point” by padelexpress.


r/computervision • • 4h ago

Showcase I trained a 260M vision model that beats a ~15x larger zero-shot model on screenshots (0.828 vs 0.731) and built a Papers-Please-style booth where it refuses to answer below its gate

2 Upvotes

Repo, weights and a playable demo at the bottom. Everything trained on free Kaggle T4s.

MK-SH-V is a visual decision model. It takes an image, a question with options, and returns calibrated probabilities, a choice, and a refusal when confidence sits below a gate frozen in advance.

Held-out real numbers

test MK-SH-V 260M jev-vlm-4b zero-shot
all real 0.807 0.785
screenshots 0.828 0.731
receipts 0.734 0.972

It wins overall and on screenshots, loses receipts badly. The gate answers 98.6% of the held-out synthetic set with a CP95 selective-risk bound of 4.1%. Out of distribution it says so, real receipts risk runs around 25%.

The demo is a Papers Please style border booth set in 1974. Travelers claim firms, the model reads their papers, and every check in the game is one the checkpoint actually measured. Below tau 0.55 it refuses to advise and routes the file to you, which happens on documents like a 5,250.00 invoice sitting at p 0.536. You can also take a bribe, it goes about as well as you would expect.

Honesty section, the part I care most about

  • Two experiments after the released checkpoint both missed their gates. The weights are unchanged.
  • On general VQA boards the model measures at chance. It is a decision model for a narrow contract, not a chat VLM.
  • Synthetic training data hurt real transfer until I mixed real screenshots in. Details in the run logs.

Links

Happy to answer training questions. It is two T4s and a lot of frozen criteria.


r/computervision • • 1h ago

Discussion Is there a good way to automatically skip unwanted

• Upvotes

​

I've been thinking about a problem that seems surprisingly difficult to solve well.

Sometimes, you want to watch a movie or TV show for its story, characters, and cinematography, but certain scenes are not something you want to watch. It could be sexual content, graphic violence, gore, or other types of scenes you'd prefer to avoid.

The problem is that manually skipping these scenes is inconvenient, and traditional content ratings or parental controls usually don't provide enough control over individual scenes.

Ideally, imagine a system that could:

- Analyze a video and detect specific types of scenes using AI.

- Let users choose exactly what they want to skip, rather than applying one generic filter.

- Automatically skip the relevant portions while preserving the surrounding dialogue and storyline.

- Work with different movies and shows without requiring someone to manually create timestamps for every video.

The technical challenge seems to be balancing detection accuracy with timing. A system that skips too early, too late, or misses context could ruin the viewing experience. False positives could be just as frustrating as missed scenes.

I'm curious about a few things:

  1. Would you actually use something like this, or is manually skipping scenes good enough?

  2. Which approach seems most practical: analyzing the video before playback, detecting scenes in real time, or using a hybrid approach?

  3. Would frame-based AI models be sufficient, or would temporal/context-aware models be necessary to understand what's happening across a scene?

  4. How would you handle scene boundaries so that dialogue and important parts of the story aren't accidentally cut?

  5. Do you know of any existing tools that solve this problem well?

I'm particularly interested in both the technical side and the user experience. I'd love to hear your thoughts, alternative approaches, or experiences with existing solutions.


r/computervision • • 1h ago

Discussion What is the main constraint holding back local edge AI deployment?

Thumbnail
• Upvotes

r/computervision • • 2h ago

Discussion CaptionExam: A Challenging QA Benchmark for Captioners

Thumbnail
ki-seki.github.io
1 Upvotes

r/computervision • • 16h ago

Discussion Resources for learning SLAM/visual-SLAM

8 Upvotes

Hello everyone,

I have a few edge devices (including Nvidia Orin Nano) and am interested in SLAM (visual-SLAM). I want to do some experiments, but I don't have any experience with SLAM. What are the best resources for beginners? Maybe some courses, textbooks, articles, or research papers?


r/computervision • • 1d ago

Research Publication I made an open-source Jev for object detection 👀

Enable HLS to view with audio, or disable this notification

188 Upvotes

TypeSafe recently added a Box question type to Jev: you describe something in an image in plain words and get back one bounding box with a confidence. It’s closed and API-only, so I built an open version: LOCUS (Locate Once, Check Until Settled).

The weights are open (2B and 0.8B) so you can run them on your own GPU

The problem: VLMs normally write a box out as text, one token at a time. That’s precise but slow, about 18 steps per box. A small regression head can predict the whole box in one pass, which is fast, but the edges come out loose.

The idea: use both. The head makes a quick draft, then the same model checks every draft token in parallel and fixes the ones it disagrees with, repeating until nothing changes. The final box is exactly what the model would have decoded on its own, in about 5.6 steps instead of 18.

Results (RefCOCO / RefCOCO+ / RefCOCOg):

  • Same weights, Acc@0.9 goes from 54.9 → 59.1 with verification
  • +4.52 Acc@0.9 over Jag (strongest open regression-head model) at the same size and training budget
  • 1.5x faster than vLLM decoding the exact same tokens

Use it on your own data: the released models are trained on RefCOCO, but you can fine-tune them on your own dataset (images, a description and a box for each). The repo covers full fine-tuning and LoRA, so a smaller GPU works too.

Limitations: a pure regression head is still faster, and since it’s trained only on RefCOCO it struggles with very small objects. Fine-tuning on your own domain is the fix there.

Not affiliated with TypeSafe. Since Jev’s Box is API-only, I couldn’t evaluate it under the same conditions, so all comparisons are against open models. Happy to answer questions.


r/computervision • • 18h ago

Commercial Profiling a YOLOv12s video pipeline: preprocessing nearly matches inference time

2 Upvotes

Disclosure: I’m Philip, with SingNova. These measurements and implementation details come from a colleague on our engineering team. This text was drafted with AI assistance. I’m sharing their profiling notes and will relay technical questions to them, then share their confirmed answers here.

In a browser-to-device object-detection demo, preprocessing takes 51.0–59.5 ms, while the worker’s inference stage takes 59.5–62.7 ms. Preprocessing, inference and postprocessing currently run serially. The useful question for us is how to break down the preprocessing measurement before deciding whether to reduce that work or overlap it with inference.

The demo also illustrates a measurement distinction: the output stream is configured at 25 FPS, but one run completed only about 7.5 new inferences per second. Those are different quantities, and neither establishes capture-to-display latency.

Setup and video path

  • Host CPU architecture: riscv64; model execution: a dedicated DFU accelerator, not the host CPU.
  • OS: openEuler 24.03 LTS-SP2, Linux 6.6.118+.
  • Runtime: 1.0.3, with a model-specific plugin and explicit cache synchronization.
  • Source video: 640×360 at 25 FPS.
  • Decode: FFmpeg software decoding. Hardware video decode is being developed separately and is not part of these measurements.
  • Model: YOLOv12s; input: 1×3×640×640, with BGR input for this setup.
  • Preprocessing: colorspace conversion, scaling and black letterbox padding.
  • Postprocessing: tensor decoding, confidence filtering, NMS and box rendering.

​

Browser → WebRTC/WHIP → ZLMediaKit → FFmpeg software decode
        → preprocessing → DFU inference → postprocessing/overlay
        → FFmpeg H.264 encode → RTSP → WebRTC/WHEP → browser

What the timers measure

We have two levels of instrumentation.

Inside the runtime, kernel_ms measures device execution. total_ms covers the inference call, including input/output copies and cache synchronization. The reported YOLOv12s averages are:

Runtime measurement Reported mean
Device execution: kernel_ms 46.45 ms
Complete runtime call: total_ms ~53 ms

One individual invocation is shown below. It is a sample, not the averages above:

[DFU_PROFILE] infer_id=977 status=ok
input_copy_ms=1.677 input_cache_clean_ms=0.263
kernel_ms=50.570 result_pre_read_ci_ms=0.095
output_copy_ms=1.043 result_post_read_ci_ms=0.114
total_ms=53.834
input_bytes=2457600 result_bytes=1411200

Separately, the worker reports pipeline-stage timings:

Pipeline measurement Reported range
preprocess_ms 51.0–59.5 ms
infer_ms 59.5–62.7 ms
post_ms 11.3–12.9 ms

infer_ms is the worker-level measurement, not an alias for kernel_ms. The runtime averages and pipeline ranges should be read separately. The worker-level inference timings are higher than the reported runtime-call mean, but these are different measurement scopes and summaries. We have not yet quantified or attributed the difference using paired per-invocation traces.

The preprocessing timer is aggregated. It does not yet separate colorspace conversion, scaling/padding, tensor preparation, copies or any waiting included in that scope. We cannot yet identify which operation dominates it.

Throughput, dropped frames and unmeasured latency

One run completed 977 inferences in 130 seconds, approximately 7.5 new inferences per second.

The source is capped at 25 FPS. When processing cannot keep up, the current implementation drops older input frames; the engineering notes report approximately 69% input frames dropped in the YOLOv12s test.

Output video remains configured at 25 FPS and can repeat the last detection result between inferences. A smooth output stream therefore does not imply a new detection result for every frame.

Model-switch initialization is recorded separately: the first YOLOv12s pipeline invocation was 1459.9 ms, versus approximately 60–61 ms in steady state. Those invocation figures are not whole-pipeline or capture-to-display latency.

Capture-to-display latency has not been measured. We do not currently have frame IDs connecting browser capture with the returned result. The figures above describe processing time and throughput, not end-to-end latency or frame age at display.

Questions for people profiling similar vision pipelines

  1. Where would you place additional trace points? How would you separate FFmpeg/filter work, scaling/padding, tensor preparation and copies, especially when a stage timer might include waiting for a frame or buffer?
  2. What evidence would make you prioritize reducing preprocessing work versus overlapping preprocessing and inference? The current three-stage worker is serial, and input buffers are explicitly synchronized before device execution. How would you measure the opportunity while checking buffer ownership and safe reuse?
  3. How do you preserve frame identity through a latest-frame/drop-old pipeline? I’m interested in approaches that let you measure frame age at display without assuming synchronized browser and device clocks.

Specific profiling methods or examples from comparable pipelines would be useful. These are measurements from one implementation on one engineering unit, not a comparison across devices or a general claim about RISC-V performance.


r/computervision • • 14h ago

Help: Project Asking opinions on my final-year project about PPE non-compliance detection using YOLO

0 Upvotes

I'm a degree student and my project is basically about detecting factory workers who aren't wearing hard hat and safety vest. Then sends notification to a dedicated dashboard and Telegram to notify safety manager while simultaneously firing an on-site alarm to warn the worker. My supervisor agreed to accept this as my project, which is good, but personally I feel like this project is too cliche as a fyp. When I first thought of this idea, I've never heard of a factory using AI integrated CCTV cameras to monitor workers, so I was excited to develop it. I'm writing this post to ask for opinions from my fellow redditors so I can improve it and impress my supervisor as I can't think of any new features that would seperate my project from any existing products out there. Oh and how about cctv camera, is Tapo C210 a good model for my project? Thank you in advance ;)


r/computervision • • 15h ago

Help: Project Opinion on my final-year project about PPE non-compliance detection using YOLO

1 Upvotes

I'm a degree student and my project is basically about detecting factory workers who aren't wearing hard hat and safety vest. Then sends notification to a dedicated dashboard and Telegram to notify safety manager while simultaneously firing an on-site alarm to warn the worker. My supervisor agreed to accept this as my project, which is good, but personally I feel like this project is too cliche as a fyp. When I first thought of this idea, I've never heard of a factory using AI integrated CCTV cameras to monitor workers, so I was excited to develop it. I'm writing this post to ask for opinions from my fellow redditors so I can improve it and impress my supervisor as I can't think of any new features that would seperate my project from any existing products out there. Thank you in advance ;)


r/computervision • • 1d ago

Discussion What to do when you’re a new grad CV engineer with 0 YOE but you’re the only CV engineer?

20 Upvotes

I’m thinking of supplementing my knowledge by watching talks and reading CV papers. I have no idea how to guide a CV research project to completion or what a CV engineer does first when they approach a problem. I’m trying to figure out how the engineering pipeline even works. Any advice?


r/computervision • • 22h ago

Discussion An open science challenge to solve the puzzle of the flashes on 1950s Palomar glass plates

Thumbnail
researchhub.com
3 Upvotes

Guys, I came across an open research challenge that is primarily an image analysis problem and I think it could be of interest to many of you.

Astronomers re-examining scanned glass photographic plates from the 1950s Palomar Sky Survey have reported thousands of short-lived point sources that look like stars but don't appear on images of the same field taken before or after (Solano et al. 2022). The debate is whether they are real flashes of light or emulsion defects, dust and scanning artifacts, which makes it a classification problem on noisy, decades-old images.

The challenge asks teams or individuals to run this kind of search on plates from observatories other than Palomar, taken before October 1957. You pre-register how you define a detection, your sample and your controls before touching the data, and you register a checksum of your detection list before analysis. A null result counts the same as a positive one, and code and detection lists have to be released openly.

The challenge provides a reference detection pipeline on GitHub and a public sample of the Palomar detections to train or validate against and is open to independent researchers as well as university teams.

Prizes for the top three teams/individuals are $75k, $50k and $25k, respectively.

I think I'll take a stab at it.


r/computervision • • 17h ago

Discussion Training-Free Sparse Attention forVideo Generation and World Models

Thumbnail
1 Upvotes

r/computervision • • 1d ago

Showcase Nov 5 - Visual AI in Agriculture Meetup

4 Upvotes

Join us on Nov 5 for the Visual AI in Agriculture virtual Meetup! Register for the Zoom.

Talks will include:

  • U-Net Framework for Micro-Scale Surface Damage Segmentation in High-Resolution Soybean Seed Imagery - Saurav Upadhyaya at Louisiana State University
  • From camera to drone: wildfire detection and integration at the edge - Maxime Carriere at kernwerk
  • 5,000 Flights to Answer One Question: Can a Drone Sample as Well as a Human? - Rohan Talwadia at LabGPT

r/computervision • • 1d ago

Showcase CropPulse – A standalone Python CV engine for pre-visual plant stress detection.

3 Upvotes

Hey everyone!

Just built my first python engine as a 14 yo. It's a plant disease diagnostic engine designed to detect early-stage crop stress before any visual symptoms occurs.

Here's the repository https://github.com/adhrit1207/CropPulse

Would really like to have your thoughts on it.


r/computervision • • 1d ago

Showcase Using robot-arm motion to calibrate a wrist camera and a DIY iToF + RGB rig

Post image
0 Upvotes

I used a RealMan ECO65’s motion to calibrate an iPhone on its wrist and a fixed 320×240 iToF sensor in my home lab.

For the wrist camera, feature matches across 26 poses gave 9,456 triangulated points and roughly 2 px median reprojection error. For the iToF sensor, I averaged 10 frames per pose, isolated pixels changed by the moving arm, and fitted those points to the robot mesh with ICP. The median fit residual was 7 mm; independent accuracy still needs checking.

The recorded RGB, depth, IR and joint streams replay together in the office twin. Phone-estimated depth is the weak part: only 6/20 frames passed the held-out check. The room splat is static.

EP20, with the setup and failures: https://www.youtube.com/watch?v=HMC7yu18qdQ

I made the video. The experiment footage is real; narration uses my own AI voice clone and the thumbnail is AI-edited from my hardware photo and room scan.


r/computervision • • 1d ago

Commercial Turning a MIL-STD Table Into Structured HTML

Thumbnail
1 Upvotes

r/computervision • • 1d ago

Commercial Extracting a Research Table With Its Header Groups Intact

Thumbnail
1 Upvotes

r/computervision • • 2d ago

Showcase A Blender extension for no-code generation of synthetic thermography and CV datasets

61 Upvotes

Hi!

Some time ago I showcased here Rendersynth, a Blender extension to generate synthetic computer vision datasets without writing Blender Python scripts.

I received some useful feedback so I thought I'd share a small update on the project:

  • Synthetic thermography: I've been working on IR-synth, a separate Blender add-on for generating synthetic thermal imagery from temperature fields and radiance models.
  • Pixel semantic segmentation: Replaced the previous approach with pixel-level segmentation masks with cryptomatte.
  • Quality of life improvements for the other formats (normal maps, depth maps, point clouds, keypoints, bounding boxes, ...)

Source code for both modules is available at:

For the main body: https://github.com/lorenzozanizz/rendersynth
For thermography: https://github.com/lorenzozanizz/ir-synth

The goal is still to make synthetic dataset generation accessible for smaller CV projects, without having to build and maintain custom Blender Python pipelines.

I plan to integrate the two projects into a single suite and write hooks for external frameworks like Blenderproc. If you feel like trying it (Blender 4.5.0+) expect to find some nasty bugs, since its still a prototype.

Any suggestions or criticism are welcome! Especially if you have any feedback or advice on the synthetic thermography component it would be greatly appreciated!

Thank you for you attention!

As a side note, for the demonstration I used free models from SketchFab, 3DAI, CGTrader


r/computervision • • 2d ago

Showcase Text axes for embedding plots: visualize your dataset by concepts like “night ↔ day” (oss, apache 2.0)

Enable HLS to view with audio, or disable this notification

18 Upvotes

Hey all, I work on LightlyStudio, an open-source tool for looking through and curating CV datasets.

Embedding plots always bugged me a bit. You get nice clusters, but the x and y axes don’t actually mean anything. So we added text axes: you type a word or phrase for each end of the two axes and the points get placed by how well they match. Put “night” and “day” on x and “indoors” and “outdoors” on y, and you get four quadrants you can actually read. Then you can lasso a corner and see what’s in there.

By default it uses MobileCLIP for images and Perception Encoder for video, but it works well with other multimodal embeddings like Gemma too. You can bring your own.

It’s Apache 2.0. It’s still pretty fresh, so any feedback is really appreciated, good or bad.


r/computervision • • 1d ago

Discussion DeepLarning algorithm Vs Keyence, Cognex, Zebra, ...

8 Upvotes

Can someone tell me in detail the difference between CNNs and the software from the sensors from Keyence, Cognex, Zebra. I can't imagine that it's really "AI" what they are using with like no computing power in their tiny edge devices. Can someone explain it to me? Are there approaches to use open source for industry? Thanks!


r/computervision • • 1d ago

Discussion My depth model finds the person and loses the world — what breaks first on mirrors?

Thumbnail
gallery
0 Upvotes

Left is the photo, right is Depth Anything's depth map. Same performer in a faceted mirror suit, shot outdoors in uncontrolled light — LA River concrete channel, under a bridge, desert hillside, hilltop at sunset.

The model finds the person in all four. Everything behind him is where it falls apart: the river and concrete wall flatten into a gradient, the bridge scene gets a black void where sky should be, the hillside turns flat and the suit collapses into a blob, the mountains become a flat black wall.

So the question for people who actually run these models: is this a specular problem, a background problem, or both? What breaks first in your stack — highlight blowout, or the geometry behind the reflection?

I shot the full set for exactly this failure mode. Details in the first comment.


r/computervision • • 1d ago

Discussion What the biggest challenge when starting a computer vision company?

0 Upvotes

What’s the real bottle neck when you start a company for enterprise level or any business?