基于OpenCV的图像处理程序设计实践

一.安装OpenCV3.x

bash 复制代码
# 安装依赖
sudo apt update
sudo apt install build-essential cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev

# 下载OpenCV源码
git clone https://github.com/opencv/opencv.git -b 3.4
cd opencv
mkdir build && cd build

# 编译安装
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..
make -j$(nproc)
sudo make install

下载好的文件里有以下内容

二.编译文件

c 复制代码
#include <opencv2/opencv.hpp>
using namespace cv;

int main() {
    Mat image = imread("test.jpg");  // 读取图片
    if (image.empty()) {
        printf("Image not found!\n");
        return -1;
    }
    Mat gray, blurred;
    cvtColor(image, gray, COLOR_BGR2GRAY);      // 转为灰度图
    GaussianBlur(image, blurred, Size(15, 15), 0); // 高斯模糊
    imshow("Original", image);
    imshow("Grayscale", gray);
    imshow("Blurred", blurred);
    waitKey(0);
    return 0;
}

gcc编译命令

bash 复制代码
g++ test1.cpp -o test1 `pkg-config --cflags --libs opencv`
#pkg-config --cflags opencv:输出OpenCV的 头文件路径(如-#I/usr/local/include/opencv4)。

#pkg-config --libs opencv:输出OpenCV的 库文件链接参数(如-lopencv_core -lopencv_highgui)。

#反引号 `:将命令的输出结果嵌入到g++命令中,自动填充路径和库名。

或Makefile 构建

bash 复制代码
CC = g++
CFLAGS = `pkg-config --cflags opencv`
LIBS = `pkg-config --libs opencv`
TARGET = test1
SRC = test1.cpp

all: $(TARGET)

$(TARGET): $(SRC)
	$(CC) $(CFLAGS) $< -o $@ $(LIBS)

clean:
	rm -f $(TARGET)

-------------------------------------
make      # 编译
./test1   # 运行
make clean  # 清理

或使用CMake 构建

最后效果:

三.总结

学习。

相关推荐
Tadas-Gao几秒前
从“驯马”到“驭队”:Harness Engineering 如何重构 AI 产品化的底层逻辑
人工智能·语言模型·架构·大模型·llm·harness
Thomas.Sir4 分钟前
重构诊疗效率与精准度之【AI 赋能临床诊断与辅助决策从理论到实战】
人工智能·python·ai·医疗·诊断
weixin_6687 分钟前
OCR 模型深度对比分析报告 - AI分析
人工智能·ocr
wasp5208 分钟前
从 Vibe Coding 到真·生产力:OpenHarness 的“Harness 方程式”及其实战分析
人工智能·架构·开源·agent
weixin_4080996712 分钟前
【完整教程】天诺脚本如何调用 OCR 文字识别 API?自动识别屏幕文字实战(附代码)
前端·人工智能·后端·ocr·api·天诺脚本·自动识别文字脚本
lvyuanj27 分钟前
深度解析Agent技术演进路径与未来趋势
人工智能
卷卷说风控40 分钟前
Claude Code 技术架构深扒:Prompt / Context / Harness 三维设计实践
人工智能·架构·prompt
Frank学习路上1 小时前
【AI技能】跟着费曼学自动驾驶
人工智能·机器学习·自动驾驶
Want5951 小时前
Rokid AI Glasses应用开发实战:把记账助手“戴”在脸上
人工智能
bryant_meng1 小时前
【Reading Notes】(4)Favorite Articles from 2021
人工智能·深度学习·业界资讯