1#![doc = include_str!("../README.md")]
2#![cfg_attr(docsrs, feature(doc_cfg))]
16
17pub mod error;
18pub mod ffi;
19
20#[cfg(feature = "recognize_text")]
21#[cfg_attr(docsrs, doc(cfg(feature = "recognize_text")))]
22pub mod recognize_text;
23
24#[cfg(feature = "detect_faces")]
25#[cfg_attr(docsrs, doc(cfg(feature = "detect_faces")))]
26pub mod detect_faces;
27
28#[cfg(feature = "detect_barcodes")]
29#[cfg_attr(docsrs, doc(cfg(feature = "detect_barcodes")))]
30pub mod detect_barcodes;
31
32#[cfg(feature = "saliency")]
33#[cfg_attr(docsrs, doc(cfg(feature = "saliency")))]
34pub mod saliency;
35
36#[cfg(feature = "face_landmarks")]
37#[cfg_attr(docsrs, doc(cfg(feature = "face_landmarks")))]
38pub mod face_landmarks;
39
40#[cfg(feature = "body_pose")]
41#[cfg_attr(docsrs, doc(cfg(feature = "body_pose")))]
42pub mod body_pose;
43
44#[cfg(feature = "hand_pose")]
45#[cfg_attr(docsrs, doc(cfg(feature = "hand_pose")))]
46pub mod hand_pose;
47
48#[cfg(feature = "contours")]
49#[cfg_attr(docsrs, doc(cfg(feature = "contours")))]
50pub mod contours;
51
52#[cfg(feature = "animals")]
53#[cfg_attr(docsrs, doc(cfg(feature = "animals")))]
54pub mod animals;
55
56#[cfg(feature = "classify")]
57#[cfg_attr(docsrs, doc(cfg(feature = "classify")))]
58pub mod classify;
59
60#[cfg(feature = "rectangles")]
61#[cfg_attr(docsrs, doc(cfg(feature = "rectangles")))]
62pub mod rectangles;
63
64#[cfg(feature = "horizon")]
65#[cfg_attr(docsrs, doc(cfg(feature = "horizon")))]
66pub mod horizon;
67
68#[cfg(feature = "feature_print")]
69#[cfg_attr(docsrs, doc(cfg(feature = "feature_print")))]
70pub mod feature_print;
71
72#[cfg(feature = "humans")]
73#[cfg_attr(docsrs, doc(cfg(feature = "humans")))]
74pub mod humans;
75
76#[cfg(feature = "aesthetics")]
77#[cfg_attr(docsrs, doc(cfg(feature = "aesthetics")))]
78pub mod aesthetics;
79
80#[cfg(feature = "segmentation")]
81#[cfg_attr(docsrs, doc(cfg(feature = "segmentation")))]
82pub mod segmentation;
83
84pub use error::VisionError;
85
86#[cfg(feature = "recognize_text")]
87pub use recognize_text::{BoundingBox, RecognitionLevel, RecognizedText, TextRecognizer};
88
89#[cfg(feature = "detect_faces")]
90pub use detect_faces::{DetectedFace, FaceDetector};
91
92#[cfg(feature = "detect_barcodes")]
93pub use detect_barcodes::{detect_barcodes_in_path, DetectedBarcode};
94
95#[cfg(feature = "saliency")]
96pub use saliency::{attention_saliency_in_path, SalientRegion};
97
98#[cfg(feature = "face_landmarks")]
99pub use face_landmarks::{detect_face_landmarks_in_path, FaceWithLandmarks, LandmarkPoint};
100
101#[cfg(feature = "body_pose")]
102pub use body_pose::{detect_human_body_pose_in_path, DetectedBodyPose, JointPoint};
103
104#[cfg(feature = "hand_pose")]
105pub use hand_pose::{detect_human_hand_pose_in_path, DetectedHandPose};
106
107#[cfg(feature = "contours")]
108pub use contours::{detect_contours_in_path, Contour, ContourOptions};
109
110#[cfg(feature = "animals")]
111pub use animals::{recognize_animals_in_path, RecognizedAnimal};
112
113#[cfg(feature = "classify")]
114pub use classify::{classify_image_in_path, Classification};
115
116#[cfg(feature = "rectangles")]
117pub use rectangles::{
118 detect_document_segmentation_in_path, detect_rectangles_in_path, RectangleObservation,
119 RectangleOptions,
120};
121
122#[cfg(feature = "horizon")]
123pub use horizon::detect_horizon_in_path;
124
125#[cfg(feature = "feature_print")]
126pub use feature_print::{generate_image_feature_print_in_path, FeaturePrint};
127
128#[cfg(feature = "humans")]
129pub use humans::{detect_human_rectangles_in_path, DetectedHuman};
130
131#[cfg(feature = "aesthetics")]
132pub use aesthetics::{
133 calculate_aesthetics_scores_in_path, detect_face_capture_quality_in_path,
134 AestheticsScores, FaceCaptureQuality,
135};
136
137#[cfg(feature = "segmentation")]
138pub use segmentation::{
139 generate_foreground_instance_mask_in_path, generate_person_segmentation_in_path,
140 InstanceMask, SegmentationMask, SegmentationQuality,
141};
142
143pub mod prelude {
145 #[cfg(feature = "animals")]
146 pub use crate::animals::{recognize_animals_in_path, RecognizedAnimal};
147 #[cfg(feature = "body_pose")]
148 pub use crate::body_pose::{detect_human_body_pose_in_path, DetectedBodyPose, JointPoint};
149 #[cfg(feature = "classify")]
150 pub use crate::classify::{classify_image_in_path, Classification};
151 #[cfg(feature = "contours")]
152 pub use crate::contours::{detect_contours_in_path, Contour, ContourOptions};
153 #[cfg(feature = "detect_barcodes")]
154 pub use crate::detect_barcodes::{detect_barcodes_in_path, DetectedBarcode};
155 #[cfg(feature = "detect_faces")]
156 pub use crate::detect_faces::{DetectedFace, FaceDetector};
157 pub use crate::error::VisionError;
158 #[cfg(feature = "face_landmarks")]
159 pub use crate::face_landmarks::{
160 detect_face_landmarks_in_path, FaceWithLandmarks, LandmarkPoint,
161 };
162 #[cfg(feature = "feature_print")]
163 pub use crate::feature_print::{generate_image_feature_print_in_path, FeaturePrint};
164 #[cfg(feature = "hand_pose")]
165 pub use crate::hand_pose::{detect_human_hand_pose_in_path, DetectedHandPose};
166 #[cfg(feature = "horizon")]
167 pub use crate::horizon::detect_horizon_in_path;
168 #[cfg(feature = "humans")]
169 pub use crate::humans::{detect_human_rectangles_in_path, DetectedHuman};
170 #[cfg(feature = "rectangles")]
171 pub use crate::rectangles::{
172 detect_document_segmentation_in_path, detect_rectangles_in_path, RectangleObservation,
173 RectangleOptions,
174 };
175 #[cfg(feature = "recognize_text")]
176 pub use crate::recognize_text::{
177 BoundingBox, RecognitionLevel, RecognizedText, TextRecognizer,
178 };
179 #[cfg(feature = "saliency")]
180 pub use crate::saliency::{attention_saliency_in_path, SalientRegion};
181}