The rustVX implementation fails to link because critical OpenVX API functions are missing or stubbed. While 27 baseline tests pass (context/graph), the vision API functions required for full conformance are not properly exported or implemented.
- Exported Functions: Only ~33 functions exported vs ~300 required for full OpenVX 1.3 conformance
- Missing Vision Kernels: All vision kernels are stubs or missing
- Missing Data Objects: Scalars, Thresholds, Arrays, Convolution, Matrix, LUT, Pyramid, Remap not implemented
vxRetainReference- Increment reference countvxReleaseReference- Decrement reference countvxQueryReference- Query reference attributesvxSetReferenceName- Set reference name for debuggingvxGetContext- Get context from referencevxGetStatus- Get error status
vxCreateImage- Create image with formatvxCreateVirtualImage- Create virtual imagevxCreateImageFromHandle- Create image from handlevxQueryImage- Query image attributesvxMapImagePatch- Map image for CPU accessvxUnmapImagePatch- Unmap imagevxSetImageAttribute- Set image attributesvxFormatImagePatchAddress2d- Calculate patch address
vxColorConvert- Color space conversionvxGaussian3x3- 3x3 Gaussian filtervxSobel3x3- Sobel edge detectionvxAdd- Element-wise additionvxThreshold- Threshold operationvxErode3x3- Morphological erosionvxDilate3x3- Morphological dilationvxAnd- Bitwise ANDvxOr- Bitwise ORvxBox3x3- Box filtervxMedian3x3- Median filter
vxCreateScalar- Scalar datavxCreateThreshold- Threshold objectvxCreateArray- Array objectvxCreateConvolution- Convolution objectvxCreateMatrix- Matrix objectvxCreateLUT- Lookup tablevxCreatePyramid- Image pyramidvxCreateRemap- Remap table
vxQueryNode- Query node attributesvxReleaseNode- Release nodevxSetNodeAttribute- Set node attributesvxReplicateNode- Replicate node for batch processing
vxLoadKernels- Load kernel librariesvxGetKernelByName- Find kernel by namevxUnloadKernels- Unload kernel librariesvxGetKernelParameterByIndex- Access kernel parameters
- Add all vx* functions to FFI exports in
lib.rs - Implement actual vision kernel algorithms
- Add proper image object constructors and accessors
- Ensure all vx* functions link correctly
Next: Update the FFI exports to include all required functions for OpenVX 1.3 conformance.