6 Commits

Author SHA1 Message Date
98b64020e4 feat(cloud_point): benchmark SCARED reconstruction accuracy
- Load pixel-aligned SCARED OBJ ground truth with unit conversion
- Rectify left-camera XYZ maps into the reconstruction coordinate frame
- Compute coverage, component errors, 3-D errors, and accuracy thresholds
- Add a JSON benchmark executable and focused evaluator/loader tests
- Document benchmark usage and disparity configuration

TG-2 #ready-for-test
2026-08-27 15:19:18 +03:00
f8177d8926 fix(cloud_point): validation, thread safety, and test cleanup
- Parse port inside try block for proper error reporting instead of unhandled exception
- Make frame_counter atomic to eliminate data race under TcpServer per-client threads
- Validate num_disparities is positive multiple of 16 in StereoMatcherFactory
- Validate stereo pair dimensions match in ScaredDatasetLoader
- Silence nodiscard warnings via std::ignore in tests

TG-3 #ready-for-test
TG-2 #ready-for-test
2026-07-12 22:28:21 +03:00
e139a55143 feat(cloud_point): SCARED dataset validation with real endoscopic stereo data
- ScaredDatasetLoader: loads M1/D1/M2/D2/R/T from OpenCV YAML + Left/Right PNGs
- scared_dataset_server executable serving get-stereo-calibration and get-image-pair
- E2E test against SCARED dataset with GTEST_SKIP guard (requires SCARED_KEYFRAME_DIR)
- README SCARED dataset validation section with CLI options and mm->m conversion
- CLI disparity-range caveat documentation

TG-2 #in-progress
2026-07-12 22:28:21 +03:00
162c210a7d feat(cloud_point): stereo rectification, point cloud pipeline, and CloudPointClient facade
- StereoRectifier wrapping cv::stereoRectify + cv::initUndistortRectifyMap (CV_16SC2 maps)
- PointCloudBuilder with cv::reprojectImageTo3D and depth/NaN filtering
- CloudPointClient high-level facade: connect(), compute_cloud() -> std::expected<PointCloud, Error>
- write_ply() ASCII PLY export helper
- CLI options 4 (compute-cloud) and 5 (compute-cloud + save PLY)
- Fix TcpServer to loop over multiple requests per connection
- Expose num_disparities parameter through CloudPointClient and StereoMatcherFactory
- Unity C# integration design spec
- Sync README, AGENTS, openwiki with stereo pipeline (C++23)
- E2E synthetic-scene test with constant-disparity stereo pair

TG-9 #ready-for-test
TG-4 #ready-for-test
TG-2 #in-progress
2026-07-12 22:28:21 +03:00
d486f550d2 feat(rpc): stereo calibration and image-pair wire protocol
- Remove unused stdexec dependency
- Fix dangling cv::Mat references and swapped dimensions in image/matrix factories
- Add CameraCalib, StereoCalibrationRPC, ImagePairRPC DTOs with nlohmann serialization
- Implement get-stereo-calibration and get-image-pair RPC handlers with deterministic mock data
- Extend RpcClient with typed getters and params-bearing call overload
- Restructure API.md with full JSON schemas and conventions
- 13 unit and integration tests for serialization

TG-3 #in-progress
TG-7 #ready-for-test
2026-07-12 22:28:21 +03:00
24b6f9937f feat(cloud_point): add OpenCV integration, stereo matching, and get-available-methods RPC
- Add OpenCV and stdexec dependencies
- ImageRPC type bridging OpenCV and RPC layers
- Stereo rectification boilerplate
- get-available-methods RPC method with get_count/get_method_name_by_id/get_method_names
- Tests for remote method retrieval
- CPU/GPU stereo matcher interfaces with SGBM implementation
- Documentation consistency pass across impl and docs

TG-5 #ready-for-test
TG-2 #in-progress
2026-07-12 22:28:21 +03:00