{"count":2,"targets":[{"target_id":"hex_nut","display_name":"M1.6 hex nut (DIN 934, A2 stainless)","use_case":"off-axis","geometry_summary":"Hexagonal prism, 6 flat facets at 120° internal angles, central M1.6 bore. Polygonal — ideal for tilt/rotation fitting.","polygonal_faces":6,"internal_angles_deg":[120.0,120.0,120.0,120.0,120.0,120.0],"feature_size_um":3200,"thickness_um":1300,"buy_url":"https://www.amazon.com/dp/B0GHKLCQGB","backup_buy_url":"https://accu-components.com/us/hexagon-nuts/7882-HPN-M1-6-A2","cad_source_url":"https://www.traceparts.com/en/product/din-hexagon-nut-style-1-grades-a-and-b","cad_format":"STEP (parametric, convert to STL/OBJ via FreeCAD)","ground_truth_kind":"parametric","price_usd_range":[5.0,25.0],"matte":true,"opaque":true,"applicable_modes":["off-axis"]},{"target_id":"salt_crystal","display_name":"Prepared salt crystals slide (NaCl, w.m., 75x25 mm)","use_case":"inline","geometry_summary":"Population of NaCl micro-cubes (Pm-3m crystal habit) on a 75×25 mm glass slide. Ground truth = parametric cube (n=1.544 at 633 nm); the largest detected crystal in the FOV is fit to a perfect cube.","feature_size_um":50,"buy_url":"https://www.triarchincorporated.com/product/salt-crystals-prepared-microscope-slide-gz8-6/","backup_buy_url":"https://www.flinnsci.com/slide-salt-crystals-w.m/ml1004/","cad_source_url":"parametric (NaCl Pm-3m, lattice 5.64 Å)","cad_format":"parametric cube","ground_truth_kind":"parametric","price_usd_range":[5.0,15.0],"matte":false,"opaque":false,"applicable_modes":["inline"]}],"doc":"Pick a target_id and POST /calibration/calibrate with a hologram of the named physical object. The returned profile_id is then passed to /reconstruct_pdhm via the calibration_profile_id query parameter to apply micro-corrections to every subsequent reconstruction from that camera.","workflow":["1. Create an account: POST /users/signup (email + password) and keep the api_key from the response. Every call below sends it as 'Authorization: Bearer <api_key>'.","2. Get a physical reference object: GET /calibration/targets lists the catalog; each entry has buy_url (Amazon) and backup_buy_url. Pick the target whose applicable_modes matches your rig ('off-axis' or 'inline').","3. Photograph the target with the same camera, wavelength, and geometry you will use for real samples, and save the raw hologram frame (PNG/TIFF, no demosaic or compression).","4. Calibrate: POST /calibration/calibrate with the hologram, your target_id, holography_mode, and best-guess pixel pitch / wavelength / distance. The response returns a profile_id.","5. Reconstruct: pass calibration_profile_id=<profile_id> on every /reconstruct_pdhm call from that camera. Re-fetch a saved profile any time via GET /calibration/profile/{profile_id}."],"next_step":"3. Photograph the target with the same camera, wavelength, and geometry you will use for real samples, and save the raw hologram frame (PNG/TIFF, no demosaic or compression)."}