Skip to main content

iris/
prelude.rs

1pub use crate::aruco::{ArucoDetector, ArucoDict, ArucoMarker};
2pub use crate::barcode::{Barcode, BarcodeDetector};
3pub use crate::burn::BurnUtils;
4pub use crate::camera::{Camera, CameraCalibration, CameraSource};
5pub use crate::contours::{
6    Contour, ConvexityDefect, Moments, RetrievalMode, RotatedRect, ShapeAnalysis,
7};
8pub use crate::core::{Mat, Point, Rect, Rng, Scalar, Size};
9pub use crate::dnn::{
10    OnnxModel, WeightLoader, blob_from_image, nms_boxes, read_net, read_net_from_onnx,
11};
12pub use crate::drawing::MarkerType;
13pub use crate::error::{IrisError, Result};
14pub use crate::face::{Face, FaceDetector, FaceRecognizer};
15pub use crate::features::{
16    BFMatcher, DMatch, FeatureDetector, FeatureType, FlannMatcher, KeyPoint, MatchDrawer,
17    TemplateMatchMethod, template_match,
18};
19#[cfg(feature = "gpui")]
20pub use crate::gui::Gui;
21pub use crate::hog::HogDescriptor;
22pub use crate::image::{GeometricTransform, Image};
23pub use crate::inpaint::inpaint;
24pub use crate::kalman::KalmanFilter;
25pub use crate::ml::KMeans;
26pub use crate::morphology::{MorphOp, MorphShape, Morphology};
27pub use crate::object_detection::{Detection, ObjectDetector};
28pub use crate::ocr::{OcrPipeline, OcrResult};
29pub use crate::optical_flow::OpticalFlow;
30pub use crate::photo::nlm;
31pub use crate::photo::{MergeMertens, Photo};
32pub use crate::qr::{QrCode, QrDetector};
33pub use crate::segmentation::{ComponentStats, SegmentationMask, Segmenter, watershed};
34pub use crate::stereo::StereoBlockMatcher;
35pub use crate::stitching::Stitcher;
36pub use crate::threshold::{AdaptiveMethod, ThresholdType};
37pub use crate::tracking::{BackgroundSubtractor, MeanShiftTracker, Tracker, TrackerType};
38pub use crate::video::{
39    ContainerFormat, Frame, FrameExt, FrameIterator, LegacyVideoWriter, OutputFormat, PixelFormat,
40    SeekMode, StreamInfo, StreamType, VideoCapture, VideoMetadata, VideoOpenOptions, VideoReader,
41    VideoWriteOptions, VideoWriter as VideoFileWriter, load_animated_image, load_image_sequence,
42};
43
44// Re-export common Burn items
45pub use burn::prelude::Device;
46pub use burn::tensor::{Int, Tensor, TensorData, backend::Backend};
47
48#[cfg(test)]
49mod tests {
50    use super::*;
51
52    #[test]
53    fn test_prelude_imports() {
54        // Just verify we can access structural items exported by prelude
55        let _pt = Point::new(0.0, 0.0);
56        let _sz = Size::new(640, 480);
57        let _err = IrisError::Generic("test".into());
58    }
59}