Skip to content

快速入门

5 分钟上手 Mini-OpenCV。

前置条件

  • 已安装 CUDA 11.0+
  • CMake 3.18+
  • C++17 编译器
  • NVIDIA GPU,计算能力 ≥ 7.5

构建

bash
# 克隆仓库
git clone https://github.com/LessUp/mini-opencv.git
cd mini-opencv

# 配置
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release

# 构建
cmake --build build -j$(nproc)

# 运行测试
ctest --test-dir build --output-on-failure

基本用法

cpp
#include "gpu_image/gpu_image_processing.hpp"
using namespace gpu_image;

int main() {
    // 创建 ImageProcessor
    ImageProcessor processor;

    // 从主机加载图像
    HostImage hostImage = ImageIO::load("input.jpg");
    
    // 上传到 GPU
    GpuImage gpu = processor.loadFromHost(hostImage);

    // 应用操作(全部 GPU 加速)
    GpuImage blurred = processor.gaussianBlur(gpu, 5, 1.5f);
    GpuImage edges = processor.sobelEdgeDetection(gpu);
    GpuImage gray = processor.grayscale(gpu);

    // 下载结果到主机
    HostImage result = processor.downloadImage(blurred);
    
    // 保存结果
    ImageIO::save("output.jpg", result);

    return 0;
}

可用操作

操作方法
高斯模糊gaussianBlur(image, kernelSize, sigma)
Sobel 边缘检测sobelEdgeDetection(image)
灰度转换grayscale(image)
反转颜色invert(image)
缩放resize(image, width, height)
旋转rotate(image, angle)
阈值处理threshold(image, value)
直方图均衡化histogramEqualization(image)

下一步

Released under the MIT License.