5个版本
0.1.0-alpha.5 | 2023年2月1日 |
---|---|
0.1.0-alpha.4 | 2023年1月23日 |
0.1.0-alpha.2 | 2023年1月20日 |
0.1.0-alpha.1 | 2023年1月19日 |
#858 in 图像
190KB
5K SLoC
RxCV
RxCV为OpenCV提供Rust编程体验。
平台 | 架构 | 状态 |
---|---|---|
Linux | x86_64 | 0.1.0 |
Linux | aarch64 | 0.1.0 |
Windows | 所有 | TBA |
macOS | 所有 | TBA |
目前支持从apt安装的OpenCV。
模块
模块 | 状态 |
---|---|
core | [WIP]0.1.0 |
imgproc | [WIP]0.1.0 |
imgcodecs | [WIP]0.1.0 |
videoio | TBA |
calib3d | TBA |
features2d | TBA |
objdetect | TBA |
dnn | TBA |
ml | TBA |
flann | TBA |
photo | TBA |
stiching | TBA |
gapi | TBA |
入门
std::vector<uchar> data = /* Some binary */;
cv::Mat src = cv::imdecode(data, cv::IMREAD_COLOR), dst;
// Execution time error.
auto thresh = cv::threshold(src, dst, 0, 255, cv::THRESH_BINARY | cv::THRESH_OTSU);
use rxcv::{
imgproc::{Threshold, ThresholdTypes},
Mat,
};
let data:&[u8] = &[1, 2, 3, 4, 5, 6];
let src = Mat::<u8, 3>::decode(data).unwrap();
/**
Not implemented threshold on Mat::<u8, 3>
let (thresh, dst) = src.threshold(
0,
255,
ThresholdTypes::THRESH_BINARY | ThresholdTypes::THRESH_OTSU
);
*/
// Convert Color;
let src = src.cvt_color_bgr2gray().unwrap();
let (thresh, dst) = src.threshold(
0,
255,
ThresholdTypes::THRESH_BINARY | ThresholdTypes::THRESH_OTSU
).unwrap();
示例
std::vector<uchar> data = /* Some binary */;
cv::Mat src = cv::imdecode(data);
use rxcv::Mat;
let data:&[u8] = &[1, 2, 3, 4, 5, 6];
let src = Mat::<u8, 3>::decode(data).unwrap();
许可证
本项目可根据您的选择,在Apache License, Version 2.0或MIT许可证下使用。
依赖项
~1.5MB
~31K SLoC