State of the Art for dvi3v project
v3.9.2.208
Table of Contents
1. Introduction
This document surveys existing projects and products that overlap with
dvi3v and compares them, on a common set of criteria, with dvi3v
itself. It is a living document, updated as the field moves; the why of
any conclusion that drives a design decision is also traced in
ResearchJournal.org.
The survey spans command-line tools, interactive and hosted tools alike (Inkscape and Scan2CAD are GUI applications, Vectorizer.AI and Recraft are web services, ImageJ is a desktop GUI). Non-CLI tools and ecosystems below widens it further, to desktop creative applications, the maker / cutter ecosystem, CAD canvas calibration, and mobile measure-from-photo apps. "Headless / CLI" is one axis of comparison (see Method below), not a filter on what is surveyed.
2. Method: comparison criteria
The criteria are taken from the project concept (see Concept). A tool is judged on whether it:
- Input from photo
- accepts an ordinary photograph (not only a clean scan or screenshot) as input.
- Vector output
- emits a true vector silhouette (SVG and similar), not a raster embedded in a wrapper.
- Real-world scale
- yields real dimensions (millimetres) rather than pixels, ideally derived automatically from a reference in the scene.
- Object extraction
- isolates the object of interest from an arbitrary background, rather than tracing the whole frame.
- Holes / complex shapes
- handles interior holes (keys, scissors) and offers fabrication aids such as a margin.
- Open source
- is free software with available source.
- Headless / CLI
- scriptable from the command line for batch and automation, not only an interactive GUI or a hosted web app.
- Fabrication target
- aims at CAD / CNC / laser / cutting workflows.
3. The field
3.1. Raster-to-vector tracers (logos and artwork)
The largest neighbouring family converts a bitmap into curves. Open
tools include potrace (the GPL tracer that dvi3v itself calls),
autotrace, and Inkscape's Trace Bitmap (a potrace front end).
Commercial and AI-based services include Vectorizer.AI, Vector Magic,
Recraft, and many web converters; the newer ones use neural networks
that fit a small number of Bezier curves rather than tracing edges
pixel-by-pixel, and several export DXF aimed at CAD, CNC, engraving
and laser workflows.1, 2
What they share with dvi3v: true vectorisation to SVG (and often
DXF). What they lack against the concept: none establish
real-world dimensions — output is in arbitrary units — and none
extract a subject from a cluttered photographic background; they
trace the whole image and expect clean, high-contrast art. dvi3v
sits downstream of this family (it uses potrace) but adds scene
extraction and a measured scale.
3.2. Reference-object measurement (computer vision)
A second family measures the real size of objects in a photo using a
reference of known size: the "pixels-per-metric" approach popularised
by the PyImageSearch tutorial and reproduced in many OpenCV / Python
projects (a coin or a printed square of known width as the reference),
and the Set Scale feature long present in the scientific tool
ImageJ.3, 4 The principle — find a reference of
known dimension, derive pixels per millimetre, then measure everything
else — is exactly the one dvi3v uses for scale.
What they share with dvi3v: reference-derived real-world dimensions
and contour finding (often Canny edges plus contour detection). What
they lack: the result is a number or an annotated bounding box, not
a filled vector silhouette one can cut or import into CAD; there is no
SVG deliverable, no hole handling, no fabrication margin, and most
assume a near top-down view and a left-most reference.
3.3. Raster-to-CAD / CNC vectorisation
A third family targets manufacturing directly. The representative
product is Scan2CAD: proprietary software that vectorises scanned
drawings, sketches and PDFs into DXF, DWG or G-code for CAD, CNC
and GIS, with raster clean-up, gap-jumping and OCR.5 It is
strong on the vector-for-fabrication side that dvi3v also targets.
What it shares with dvi3v: vector output destined for cutting /
machining. What it differs on: scale is set from the drawing's own
units or the operator's calibration, not derived from a reference
object photographed beside the part; it is built for line drawings and
scans rather than extracting a physical object from a casual photo;
and it is closed source and GUI-centric.
4. Non-CLI tools and ecosystems
This section widens the survey to interactive and consumer tools.
4.1. Desktop creative applications
The mainstream vector editors all offer an interactive trace of a
raster: Adobe Illustrator's Image Trace, CorelDRAW's PowerTRACE,
Inkscape's Trace Bitmap (the potrace front end already noted), and
dedicated tools such as Vector Magic. They are strong, GUI-driven
tracers with manual tuning, but — like the command-line tracers —
they carry no real-world scale and do not extract a subject from a
cluttered photograph; they expect clean, high-contrast art and trace
the whole frame.
4.2. Maker and cutter ecosystem
Laser and craft-cutter software is the closest fabrication neighbour.
LightBurn imports a raster and traces it (a brightness cutoff and
threshold, much like dvi3v's own thresholding) into cut
paths.6 Glowforge's on-bed Trace, Cricut's Design Space and
Silhouette Studio do the same for their machines. Two differences from
dvi3v matter: the trace works on silhouettes and clean drawings, not
on an object photographed on a textured floor, so there is no
background extraction; and the real-world size comes from the machine
bed or canvas (the operator sizes the art to the material), not from
a reference object captured in the same photo. Holes are handled only
in so far as the tracer emits inner contours.
4.3. CAD canvas calibration
CAD packages let a photo or scan be brought in as a background
"canvas" and calibrated to scale: in Autodesk Fusion the user inserts
the image, then Calibrate by picking two points and typing the known
distance between them; Onshape and others are similar.7 This
gives a genuine real-world scale from a known reference dimension —
the same idea as dvi3v — but the vectorisation that follows is
manual (the user traces splines over the calibrated image); there is
no automatic extraction and no silhouette output.
4.4. Mobile measure-from-photo apps
A family of phone apps (for example Easy Reference Measure and
RefSize) measures real dimensions from a photo by including a
reference of known size — a coin, a credit card, a ruler — exactly
dvi3v's scale principle, now in a pocket.8 They are the
purest expression of reference-derived scale on ordinary photos, but
the result is a number between two tapped points (or an annotation),
produced by manual tapping; there is no object extraction, no vector
silhouette, and no fabrication output. (Note the contrast with AR
"measure" apps such as the built-in iOS Measure, which use depth
sensing rather than a reference object and likewise yield only
numbers.)
5. Comparison
Legend: Y = yes, N = no, ~ = partial / with caveats.
| Tool / family | Photo | Vector | Real mm | Extract | Holes | Open | CLI | Fabric. |
|---|---|---|---|---|---|---|---|---|
| dvi3v | Y | Y | Y | Y | Y | Y | Y | Y |
| potrace / autotrace | ~ | Y | N | N | Y | Y | Y | ~ |
| Inkscape Trace Bitmap | ~ | Y | N | N | Y | Y | N | ~ |
| Vectorizer.AI / Recraft | ~ | Y | N | ~ | Y | N | ~ | Y |
| OpenCV pixels-per-metric | Y | N | Y | ~ | N | Y | Y | N |
| ImageJ (Set Scale) | Y | N | Y | ~ | N | Y | ~ | N |
| Scan2CAD | ~ | Y | ~ | N | Y | N | N | Y |
| Illustrator / CorelDRAW | ~ | Y | N | N | Y | N | N | ~ |
| LightBurn / cutter trace | ~ | Y | ~ | N | Y | N | N | Y |
| Fusion canvas (calibr.) | Y | ~ | Y | N | ~ | N | N | Y |
| Mobile reference-measure | Y | N | Y | N | N | N | N | N |
The columns follow the criteria of the previous section: Photo input, Vector output, Real millimetre scale, object Extraction from a background, Holes / complex shapes, Open source, CLI / headless, and a Fabrication target.
6. Positioning of dvi3v
No surveyed tool occupies the same cell as dvi3v. The two capabilities
that define the concept — a reference-derived real-world scale and a
filled vector silhouette extracted from an ordinary photograph —
each exist separately:
- the measurement family has the scale but stops at numbers —
including the mobile reference-measure apps, which share
dvi3v's exact scale principle yet output only a measured length; - the tracer, raster-to-CAD and cutter families have the vector output but take scale from the drawing, the machine bed or a manual calibration, not automatically from a reference object in a photo, and they do not extract the subject from a cluttered background.
dvi3v is, within this broadened survey (command-line, desktop GUI,
web, maker and mobile alike), the only tool that joins the two:
photograph in, dimensioned filled SVG out, with automatic object
extraction, optional hole preservation and a millimetre fabrication
margin, runnable headless. Its cost is breadth — it is a focused
Bash + ImageMagick + potrace pipeline, not a general editor — and
it inherits the known limits recorded elsewhere in the project
(thin-feature and margin trade-offs, near-parallel camera assumption,
and an automatic paper-color detection that can occasionally pick the
wrong dominant color rather than the one intended).
7. Technologies compared
- dvi3v
- Bash, ImageMagick,
potrace,bc; reference-paper detection (A4 / Letter and other ISO sizes) with an EXIF-based fallback; morphological clean-up;SVGoutput with optionalDXF(native potrace) and extrudedSTL(a bundled Python helper by default, or OpenSCAD); GPL. - potrace / autotrace
- C, GPL; bitmap to
SVG/EPS/DXF; no scale, no extraction. - Inkscape
- C++ / GTK GUI wrapping
potrace; GPL. - Vectorizer.AI, Recraft and similar
- proprietary, cloud, neural-network
tracing; multi-format export including
DXF. - OpenCV pixels-per-metric
- Python and OpenCV (Canny, contours, minimum-area rectangle); permissive licences; numeric output.
- ImageJ
- Java; scientific image measurement; manual scale set from a known distance.
- Scan2CAD
- proprietary desktop; intelligent vectorisation with OCR;
DXF/DWG/ G-code. - Illustrator / CorelDRAW
- proprietary desktop GUI; interactive trace (Image Trace, PowerTRACE); no real-world scale, no extraction.
- LightBurn and cutter software
- proprietary desktop GUI; brightness / threshold trace to cut paths; scale taken from the machine bed or canvas, not from a reference in the photo.
- Fusion (canvas calibration)
- proprietary CAD; image inserted as a calibrated canvas (two points plus a known distance), then manual spline tracing; real scale, no automatic extraction or silhouette.
- Mobile reference-measure apps
- phone apps; reference-object scale (coin / card / ruler) with manual point tapping; numeric output only.
8. Threats and opportunities
- Learning-based segmentation (for example general "segment anything" models) could make object extraction far more robust than the current threshold-and-centre heuristic, and is a candidate future direction rather than a competitor today.
- Perspective correction (recovering a true top-down view from an
angled photo) is offered by none of the close neighbours for this
use; adding it would widen
dvi3v's accuracy envelope. - The reference-object measurement scripts are easy to combine with a
tracer; the integration
dvi3valready provides is its moat, but it is a reproducible one.
9. References
Footnotes:
Vectorizer.AI, image-to-vector (SVG, PDF, EPS, DXF) service. https://vectorizer.ai/
Potrace, transforming bitmaps into vector graphics (GPL). https://potrace.sourceforge.net/
A. Rosebrock, "Measuring size of objects in an image with OpenCV", PyImageSearch. https://pyimagesearch.com/2016/03/28/measuring-size-of-objects-in-an-image-with-opencv/
Example open implementations of the pixels-per-metric method. https://github.com/snsharma1311/object-size
Scan2CAD, raster-to-vector and PDF-to-CAD conversion (DXF / DWG / G-code). https://www.scan2cad.com/
LightBurn, Image Tracing documentation. https://docs.lightburnsoftware.com/Tools/TracingImages.html
Autodesk, "How to scale (calibrate) an inserted canvas in Fusion". https://www.autodesk.com/support/technical/article/caas/sfdcarticles/sfdcarticles/How-to-scale-an-inserted-canvas-in-Fusion-360.html
Reference-object measurement apps for phones, for example Easy Reference Measure and RefSize Photo Dimension on the App Store.