OpenCV简介、OpenCV安装

OpenCV简介、OpenCV安装

本文目录:

零、时光宝盒

一、OpenCV简介

二、OpenCV图像处理基础知识

三、OpenCV-Python环境安装

2.1、纯python环境下安装OpenCV

2.2、Anaconda管理环境下安装 OpenCV

四、如何用OpenCV 中进行读取展示图像

五、OpenCV读取图像、显示、保存的例子


 零、时光宝盒

2ab463de26a541818271efa176656ae6.png
逆境清醒:https://blog.csdn.net/weixin_69553582   

  前几天,看到新闻,我家所在的学校(广州华南理工大学)计算机图像处理专家、计算机学院副教授、博士生导师全宇晖,于2025年1月14日在广州因病逝世,终年39岁(1985年生)。去年全宇晖才刚刚入选全球前2%顶尖科学家“年度科学影响力”榜单。

  心里很难过,我不认识他,岁数上他比我小很多,能力上他比我优秀很多很多,但却比我先走了。

  为此,我新开了OpenCV专栏,谨以此OpenCV专辑向他致敬。

   逆境清醒
2025.1.20

此文地址:https://blog.csdn.net/weixin_69553582/article/details/145209776  

7f8eafc867aa425cab7d368ee0eb4dd8.gif

一、OpenCV简介


(OpenCV标志,图片来源:截图自OpenCV官网)

  OpenCV (Open Source Computer Vision Library),是计算机视觉中经典的专用库,OpenCv 可以运行在多平台之上,轻量级而且高效,由一系列 C 函数和少量 C++类构成,提供了 Python、Ruby、MATLAB 等语言的接口。

  以下是OpenCV的发展历史的一些重要里程碑:

1、1999年:OpenCV项目开始,由Gary Bradsky于1999年在英特尔创立。由Intel公司的Gary R. Bradski领导。最初的目标是为智能机器人提供一个开源的计算机视觉库。

2、 2000年:OpenCV的第一个版本(1.0)发布。它包含了基本的图像处理和计算机视觉算法,如边缘检测、图像分割和特征提取等。

3、2005年,OpenCV被用于斯坦利,这辆车赢得了2005年DARPA大挑战赛。后来,在Willow Garage的支持下,它的积极开发继续进行,Gary Bradsky和Vadim Pisarevsky领导了该项目。

4、 2006年:OpenCV 1.0的稳定版发布。这个版本包含了许多新特性和改进,包括基于特征的物体检测和跟踪算法。

5、 2008年:OpenCV 2.0发布。这个版本是一个重大的里程碑,引入了C++接口和一些新的功能,如立体视觉和GPU加速。

6、 2012年:OpenCV 2.4发布。这个版本引入了更多的功能和改进,如人脸识别、行人检测和动态标记等。

7、 2015年:OpenCV 3.0发布。这个版本带来了一些重大的改变,如支持C++11标准、移动端支持和更好的性能优化。

8、2019年:OpenCV 4.0发布。这个版本引入了许多新功能,如DNN模块、改进的人脸识别和增强现实等。

  OpenCV在过去几十年里一直在不断发展和改进,成为了最受欢迎的计算机视觉库之一。OpenCV现在支持与计算机视觉和机器学习相关的多种算法,并且正在日益扩展。它被广泛应用于各种领域,包括机器人技术、安防系统、图像处理和医学影像等。

  OpenCV支持多种编程语言,如C++、Python、Java等,并可在Windows、Linux、OS X、Android和iOS等不同平台上使用。基于CUDA和OpenCL的高速GPU操作接口也在积极开发中。

  OpenCV-Python是OpenCV的Python API,n是一个Python绑定库,旨在解决计算机视觉问题。结合了OpenCV C++API和Python语言的最佳品质。

  我写的这个OpenCV系列教程,是基于Python语言的。

  我个人电脑目前版本:Python 3.12.4。OpenCV 4.10.0。
 

二、OpenCV图像处理基础知识

  OpenCV是一个开源的计算机视觉库,可以用于图像处理和计算机视觉任务。

  OpenCV图像处理涉及的相关知识包括:

1. 图像加载和保存:使用OpenCV库可以读取图像文件。OpenCV可以加载和保存各种图像格式,包括常见的JPEG、PNG和BMP格式。

2. 图像显示:OpenCV可以显示图像,并提供了一些调整图像显示的功能,如调整图像大小和亮度等。

3. 图像基本操作:OpenCV提供了一系列基本的图像操作功能,包括图像剪切、复制、旋转、缩放、平移、裁剪、镜像等操作。

4. 图像滤波:OpenCV提供了各种图像滤波器,包括平滑滤波(如均值滤波、高斯滤波等)和锐化滤波(如拉普拉斯滤波、Sobel滤波等),用于图像平滑和降噪。

5. 图像边缘检测:OpenCV提供了一些边缘检测算法,如Canny边缘检测算法和Sobel边缘检测算法,用于检测图像中的边缘。通过查找图像中的轮廓,可以提取出图像中的对象形状。

6. 图像特征提取:OpenCV提供了一些常用的图像特征提取算法,如Harris角点检测算法和SIFT特征提取算法等。通过提取图像中的特征点,并使用特征描述算法(如SIFT、SURF等)和特征匹配算法(如FLANN、RANSAC等),可以实现图像的特征匹配和识别。

7. 图像变换:OpenCV提供了一些图像变换的功能,如图像的仿射变换和透视变换,用于图像的旋转、缩放和投影等。包括灰度转换、色彩空间转换(如RGB到HSV的转换)、透视变换等操作。

8. 图像分割:OpenCV提供了一些图像分割算法,如基于颜色的分割和基于边缘的分割算法,用于将图像分割为不同的区域。通过设置阈值,可以将图像分割成不同的区域,以便进行后续处理。

9. 目标检测:OpenCV提供了一些目标检测算法,如基于Haar特征的级联分类器和基于深度学习的目标检测算法,用于检测图像中的特定目标。

10. 图像配准:OpenCV提供了一些图像配准算法,如基于特征的配准和基于互信息的配准算法,用于将多幅图像对齐。

11. 图像通道操作:通过拆分和合并图像通道,可以对图像的不同通道进行独立处理。

12.图像形态学操作:包括腐蚀、膨胀、开运算、闭运算等操作,可以用来处理图像中的噪声和提取图像中的特征。

  这些知识只是OpenCV图像处理中的一部分内容,OpenCV还提供了许多其他功能和算法,可以根据具体的需求进行学习和应用。通过学习和应用这些知识,可以实现各种图像处理任务,如图像增强、目标检测、目标跟踪等。

三、OpenCV-Python环境安装

请先安装和配置好python开发环境

安装 OpenCV(Python 版)前提条件:

  • 安装了 Python(建议使用 Python 3.x 版本)
  • 安装了 pip(Python 包管理工具)。

2.1、纯python环境下安装OpenCV

使用以下命令验证是否安装:

python -V
pip -V

如果能够正常显示版本号,说明基础环境ok

如果还未安装 Python 参考:
使用 pip 安装 OpenCV 是最简单和直接的方法,你只需要在命令行中输入以下命令:

pip install opencv-python

该命令会自动从 PyPI(Python 包索引)下载并安装 OpenCV 的 Python 版本。

如果需要额外的模块(例如 contrib 模块),可以安装 opencv-contrib-python:

pip install opencv-contrib-python

opencv-contrib-python这个版本包含了更多 OpenCV 的模块和功能,适合需要深度学习、物体识别等复杂任务的开发者。

opencv-python 和 opencv-contrib-python 包是 OpenCV 的不同版本,它们分别包含了核心模块和扩展模块,一般来说,opencv-contrib-python 包含更多功能,适合需要高级应用的用户。

带下载源安装命令(例如使用清华源):

pip install opencv-python -i https://pypi.tuna.tsinghua.edu.cn/simple


安装完成后,可以通过以下代码验证 OpenCV 是否安装成功:

import cv2
print("当前Opencv版本号是:",cv2.__version__)

如果能输出了 OpenCV 的版本号,例如 我的电脑4.10.0,说明OpenCV 安装成功。

2.2、Anaconda管理环境下安装 OpenCV

如果需要安装Anaconda和相关python,请查看这篇文章:

Anaconda 2024.06-1安装设置

如果你使用 Anaconda 来管理 Python 环境,

进入你需要安装 OpenCV的虚拟环境,

如果你还没有Anaconda下的python虚拟环境,可以按以下步骤先建立一个:

(1)、创建一个新的虚拟环境(可选):

conda create -n 此处填写你的虚拟环境名称 python=python版本号

例如创建一个名字叫opencv_test的虚拟环境:

conda create -n opencv_test python=3.12

激活opencv_test环境:

conda activate opencv_test

安装 OpenCV:

conda install -c conda-forge opencv

如果只需要主模块,可以通过pip安装opencv-python
进入cmd命令行,

pip install opencv-python 

如果您需要main和contrib模块,请运行pip install-opencv-contrib-python(查看opencv文档中列出的额外模块)

四、如何用OpenCV 中进行读取展示图像

  不管怎么样,我们只有先获取图像之后,才能对图像进行操作处理,信息提取,结果输出,图像显示,图像保存。

  OpenCV 中进行读取展示的步骤如下:

  •   图像读取;
    •   窗口创建;
    •   图像显示;
    •   图像保存;
    •   资源释放。

    OpenCV支持的图片格式:

    • Windows位图(bmp)、
    • 便携式图像格式(pbm、pgm、ppm)
    • Sun光栅(sr、ras)等图像格式。
       

      在插件的帮助下
    果您自己构建库,则需要指定使用它们,但在系统默认提供的软件包中),

    • 您还可以加载JPEG(JPEG、jpg、jpe)、
    • JPEG 2000(jp2-在CMake中代号为Jasper)、
    • TIFF文件(TIFF、tif)和便携式网络图形(png)等图像格式。
    • 此外,OpenEXR也是一种可能性。

    OpenCV读取图像的基本函数有 :

    函数
    1cv2.imread(filename,flags)从文件读取图像
    2cv2.namedWindow()OpenCV窗口创建
    3cv2.imshow()在OpenCV窗口中显示图像
    4cv2.imwrite()将图像写入文件
    5cv2.destroyWindow()释放窗口
    6cv2.destroyAllWindows()释放所有窗口
    7cv2.cvtColor(img,color_change)对颜色维度进行转换。
    8cv2.waitKey()等待键盘输入,若未输入,则一直等待

      注 意:
      使用OpenCV读取的图像的颜色通道为BGR(蓝绿红)

      Matplotlib使用的颜色通道为RGB(红绿蓝),

      所以如果要正常显示图像的颜色效果,需要进行颜色通道转换。

      先将OpenCV读取的BGR(蓝绿红)颜色通道的图像转换为RGB(红绿蓝)颜色通道的图像,再使用Matplotlib正确显示图像。

    有关计算机图像颜色的介绍,

    请查看这篇文章:计算机视觉基础__图像特征https://blog.csdn.net/weixin_69553582/article/details/130068666https://blog.csdn.net/weixin_69553582/article/details/130068666https://blog.csdn.net/weixin_69553582/article/details/130068666https://blog.csdn.net/weixin_69553582/article/details/130068666https://blog.csdn.net/weixin_69553582/article/details/130068666

    五、OpenCV读取图像、显示、保存的例子

    一个例子,展现OpenCV读取图像、显示、保存,

    运行后,

    当接受键盘按键是“s"时,保存当前打开的图片名字为:“first.png";

    当接受键盘按键是除了“s"外的其他按键时,退出。

    相关的代码如下:

    import cv2 as cv
    import sysimg = cv.imread(cv.samples.findFile("images/1.png"))if img is None:sys.exit("不能读取图片.")cv.imshow("逆境清醒opencv教程系列", img)
    key = cv.waitKey(0)if key == ord("s"):cv.imwrite("first.png", img)

    先有个大概的概念,下面陆续会有详细介绍,我也在学习中,有兴趣的一起了解一下吧。

    下一篇请看:

    OpenCV imread函数读取图像__实例详解https://blog.csdn.net/weixin_69553582/article/details/145268598

    推荐阅读:

    逆境清醒文章总目录表

    27d5b50d93a089da35ee1a28905f9719.jpeg​​​​

    c64d8b4d0b6842ebe1196c0b1e3fba51.jpeg​​​​

    a136a43cd0015088d4ce37b1bb653533.jpeg​​​​

    给照片换底色(python+opencv)猫十二分类基于大模型的虚拟数字人__虚拟主播实例

    0f92b28e915ca3cc26cfaaf47c5fc62d.jpeg

    5d2b51be3e7e932be95355088e17d524.jpeg

    3cf3fe3c1a186bfcbf12d4755b8950ae.jpeg

    计算机视觉__基本图像操作(显示、读取、保存)直方图(颜色直方图、灰度直方图)直方图均衡化(调节图像亮度、对比度)

    849b7a72434213407c862c8f8e071a22.png

    9412a31659ba6db83d806c3f354dd1c0.png

    fb29a865f75af8352dca5e3d56a09004.png

    语音识别实战(python代码)(一)

     人工智能基础篇

     计算机视觉基础__图像特征

    逆境清醒

    637c349e8206c0651d1f2751ba128912.png

    ce6afe00fdaa41f8aff1cf830e23f1ac.png7364ac22aa4f40899b6d7597ad7d91b6.png

     matplotlib 自带绘图样式效果展示速查(28种,全)

    PyCharm 社区版(2024.2.3)安装、配置、创建项目

    pycharm汉化插件无法使用也无法卸载的解决方法

    ec9793633e16de7b52fbf0b74ecfa2f3.png

    1b1579176220a88ae2a53758f91a41d6.pngc97237f650c44d0da960e88c37fc921d.png
    Three.js实例详解___旋转的精灵女孩(附完整代码和资源)(一)

    开源数据科学平台Anaconda简介

    最新版本Anaconda 2024.06-1安装设置

    6e420cca6a1313b93948785f689f5723.png

    1da3f182e081ad8f3cfcf53013909b8b.png

    ca733c1a99c6457a762d0e503855ce79.png

    立体多层玫瑰绘图源码__玫瑰花python 绘图源码集锦

     Python 3D可视化(一)

    让你的作品更出色——词云Word Cloud的制作方法(基于python,WordCloud,stylecloud)

    f92dfeb72ec683025a63db2fe8a26492.png

    1b2a866ebb074a1e5859dad42c435d5c.jpeg

    8207b63755bf37b10807a046080f14df.png

     python Format()函数的用法___实例详解(一)(全,例多)___各种格式化替换,format对齐打印

     用代码写出浪漫__合集(python、matplotlib、Matlab、java绘制爱心、玫瑰花、前端特效玫瑰、爱心)

    python爱心源代码集锦(18款)

    b97d56fe7e3ce6234cb182ad86fef4ed.jpeg

    6871f222e7db3f8ce83336ad50311c3a.png

    b89ed1147e8a76e6c64b812d65e8f2ef.png

     Python中Print()函数的用法___实例详解(全,例多)

     Python函数方法实例详解全集(更新中...)

     《 Python List 列表全实例详解系列(一)》__系列总目录、列表概念

    7090a17485b11d9da69e37e5756c6910.png

    50313523c8c19f29270fb1110fe66ae9.png

    用代码过中秋,python海龟月饼你要不要尝一口?

     python练习题目录

    4c77c7a60782637db9e27b3deec7abee.png

    c397ed3a22c7885194eb92b5b3883322.png

    a18fbd27f15eaa98f0bb5a4fed8cbd8b.png

    草莓熊python turtle绘图(风车版)附源代码

     ​草莓熊python turtle绘图代码(玫瑰花版)附源代码

     ​草莓熊python绘图(春节版,圣诞倒数雪花版)附源代码

    36e2af3bf474c59b9c430b223417793b.png

    542dbf91cfafa23e1ccdee94a7b22397.png

    175f4dd5b5bb4e46915f57c9f853f001.jpeg

     巴斯光年python turtle绘图__附源代码

    皮卡丘python turtle海龟绘图(电力球版)附源代码

    【中秋月饼系列】2024年立体月饼新鲜出炉----python画月饼(1)附完整代码

    逆境清醒

    68b0f4704053ab870c16bb4e37897d63.png

    25ff4b8d741f0942c50dd96b7e866386.jpeg

    59bb0955631256520f0edd17f8304669.jpeg

     Node.js (v19.1.0npm 8.19.3) vue.js安装配置教程(超详细)

     色彩颜色对照表(一)(16进制、RGB、CMYK、HSV、中英文名)

    2025年1月多家权威机构____编程语言排行榜__薪酬状况

    7dda70990181a20a430cc7b13dc9d8aa.png

    a1fea2de0187913a4cdb18473c512c55.png

    96e1df3760ce3017026da2d1de069869.png

     手机屏幕坏了____怎么把里面的资料导出(18种方法)

    【CSDN云IDE】个人使用体验和建议(含超详细操作教程)(python、webGL方向)

     查看jdk安装路径,在windows上实现多个java jdk的共存解决办法,安装java19后终端乱码的解决

    逆境清醒

    cc75265b98b9475cb68deece4f3def19.png

    用代码画万圣节南瓜(python,MATLAB,html css)

    8fe676a8d0404267af522df861a0a904.gif

    CSS3 动画相关属性实例大全

    49148faa34d949e999b8f0976a1fa8cb.png

    CSS @规则(At-rules)系列详解

    fa753f11d26d967646a85b78b53dc703.png

    71e3b727d1634951aeed4e66cc536fe1.jpega1632ea3af784e47a1673144e360272e.gif
    vue3 项目搭建教程(基于create-vue,vite,Vite + Vue)

    圣诞节系列代码专辑(目录)

    Markdown 语法详解大全(超级版)

    4290a52c20eee861ee159e17659342f5.png

    b126b976989a1e4f1ae40867407e8f4d.png

    15f065b7e46b238db1e7382f70fd7076.png

    2023年春节祝福第二弹——送你一只守护兔,让它温暖每一个你【html5 css3】画会动的小兔子,炫酷充电,字体特

     别具一格,原创唯美浪漫情人节表白专辑,(复制就可用)(html5,css3,svg)表白爱心代码(4套)

    SVG实例详解系列(一)(svg概述、位图和矢量图区别(图解)、SVG应用实例)

    f3a00b9bf85e8d36c21d8e9785f43a53.png

    1f143789d9652fd35c1fabf11b6f149c.png

    2c8047a9f87aa22a8abe57ad0081b1d9.png

    【程序人生】卡塔尔世界杯元素python海龟绘图(附源代码),世界杯主题前端特效5个(附源码)HTML+CSS+svg绘制精美彩色闪灯圣诞树,HTML+CSS+Js实时新年时间倒数倒计时(附源代码)

     2023春节祝福系列第一弹(上)(放飞祈福孔明灯,祝福大家身体健康)(附完整源代码及资源免费下载)

    逆境清醒

    a01e7c6663c27936b3c174265db14012.png

    6d12eed561af36157625a07b771f9b0b.png

    af9dcebc4110cf5b9a012a3ef7d268fe.png​​​​​​​

     tomcat11、tomcat10 安装配置(Windows环境)(详细图文)

     Tomcat端口配置(详细)

     Tomcat 启动闪退问题解决集(八大类详细)

    逆境清醒

    987cd5bf2ecef39fd782b5d64f0c3cbf.png7bd749109565caaad3799224fad815a4.jpeg

    信息系统项目管理师试题

    云计算

    本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/68754.shtml

    如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

    相关文章

    使用Chrome和Selenium实现对Superset等私域网站的截图

    最近遇到了一个问题,因为一些原因,我搭建的一个 Superset 的 Report 功能由于节假日期间不好控制邮件的发送,所以急需一个方案来替换掉 Superset 的 Report 功能 首先我们需要 Chrome 浏览器和 Chrome Driver,这是执行数据抓取的…

    算法专题(三):二分查找

    本篇还是像之前一样,以举例子的形式向大家讲解!每道题的题目均是传送门!点击跳转对应题! 目录 一、二分查找 1.1 题目 1.2 思路 1.3 代码实现 总结(模版) 朴素版: 二、在排序数组中查找…

    在k8s中部署一个可外部访问的Redis Sentinel

    1.前提条件: 1.部署了multus 想要k8s外部能访问k8s内部的redis,redis-server启动时必须使用multus的IP 2.helm客户端安装 2.开始安装 准备3个multus ip 10.10.10.130 10.10.10.131 10.10.10.132 apiVersion: k8s.cni.cncf.io/v1 kind: NetworkAttac…

    使用tritonserver完成clip-vit-large-patch14图像特征提取模型的工程化。

    1、关于clip-vit-large-patch14模型 关于openapi开源的clip-vit-large-patch14模型的特征提取,可以参考之前的文章:Elasticsearch向量检索需要的数据集以及768维向量生成这篇文章详细介绍了模型的下载地址、使用方式、测试脚本,可以让你一步…

    偏序关系.

    一、偏序(半序)关系 偏序关系 自反反对称传递性 二、全序(线序、链)关系 三、偏序集中的重要元素 1. 极大元与极小元 极大元找所在集合的一个或几个最高点; 极小元找所在集合的一个或几个最低点。 2. 最大元与最小…

    2024嵌入式系统的未来发展与技术洞察分享

    时间如白驹过隙,不知不觉又是一年,这一年收获满满。接下来,将本年度对技术的感悟和洞察分析如下,希望对大家有所帮助。 在过去几十年里,嵌入式系统技术迅速发展,成为现代电子设备和智能硬件的核心组成部分。…

    AQS公平锁与非公平锁之源码解析

    AQS加锁逻辑 ReentrantLock.lock public void lock() {sync.acquire(1);}AbstractQueuedSynchronizer#acquire public final void acquire(int arg) {if (!tryAcquire(arg) &&acquireQueued(addWaiter(Node.EXCLUSIVE), arg))selfInterrupt();}addWaiter就是将节点加入…

    数字电子技术基础(十五)——MOS管的简单介绍

    目录 1 MOS的简单介绍 1.1 MOS简介 1.2 MOS管的基本结构 1.3 MOS管工作时的三个区域 1.4 MOSEF的结构的工作原理 1 MOS的简单介绍 1.1 MOS简介 绝缘栅型场效应管,简称MOS管,全称为金属-氧化物-半导体场效应晶体管(Metal-Oxide-Semic…

    基础入门-传输加密数据格式编码算法密文存储代码混淆逆向保护安全影响

    知识点: 1、传输格式&传输数据-类型&编码&算法 2、密码存储&代码混淆-不可逆&非对称性 一、演示案例-传输格式&传输数据-类型&编码&算法 传输格式 JSON XML WebSockets HTML 二进制 自定义 WebSockets:聊天交互较常…

    Spark/Kafka

    文章目录 项目地址一、Spark1. RDD1.1 五大核心属性1.2 执行原理1.3 四种创建方式二、Kafka2.1 生产者(1)分区器(2)生产者提高吞吐量(3) 生产者数据可靠性数据传递语义幂等性和事务数据有序2.2 Broker(1)Broker工作流程(2)节点服役和退役2.3 副本(1)Follower故障细…

    10倍数据交付提升 | 通过逻辑数据仓库和数据编织高效管理和利用大数据

    数据已经成为企业核心竞争力的关键要素。随着大数据技术的发展,如何高效管理和利用海量的数据,已成为企业在数字化转型过程中面临的重要课题。传统的数据仓库已经不能满足当今企业对数据处理的高效性、灵活性和实时性的需求。在这种背景下,逻…

    《keras 3 内卷神经网络》

    keras 3 内卷神经网络 作者:Aritra Roy Gosthipaty 创建日期:2021/07/25 最后修改时间:2021/07/25 描述:深入研究特定于位置和通道无关的“内卷”内核。 (i) 此示例使用 Keras 3 在 Colab 中查看 GitHub …

    Unreal Engine 5 C++ Advanced Action RPG 十章笔记

    第十章 Survival Game Mode 2-Game Mode Test Map 设置游戏规则进行游戏玩法 生成敌人玩家是否死亡敌人死亡是否需要刷出更多 肯定:难度增加否定:玩家胜利 流程 新的游戏模式类游戏状态新的数据表来指定总共有多少波敌人生成逻辑UI告诉当前玩家的敌人波数 3-Survival Game M…

    嵌入式产品级-超小尺寸热成像相机(从0到1 硬件-软件-外壳)

    Thermal_Imaging_Camera This is a small thermal imaging camera that includes everything from hardware and software. 小尺寸热成像相机-Pico-LVGL-RTOS 基于RP2040 Pico主控与RTOS,榨干双核性能实现LVGL和成图任务并行。ST7789驱动240280屏,CST8…

    AI守护煤矿安全生产:基于视频智能的煤矿管理系统架构解析

    前言 本文我将介绍我和我的团队自主研发设计的一款AI产品的成果展示——“基于视频AI识别技术的煤矿安全生产管理系统”。 这款产品是目前我在创业阶段和几位矿业大学的博士共同从架构设计、开发到交付的全过程中首次在博客频道发布, 我之前一直想写但没有机会来整理这套系统的…

    OCCT 之 TDF_Attribute 以及子类

    一.概述 TDF_Label是OCAF中核心数据结构,与TDF_Attribute结合使用,实现对模型的各种操作。 以下摘自OCCT7.7.0官方文档 A class each application has to implement. It is used to contain the application data. This abstract class, alongwith La…

    数字化时代,传统代理模式的变革之路

    在数字化飞速发展的今天,线上线下融合(O2O)成了商业领域的大趋势。这股潮流,正猛烈冲击着传统代理模式,给它带来了新的改变。 咱们先看看线上线下融合现在啥情况。线上渠道那是越来越多,企业纷纷在电商平台…

    Vue2+OpenLayers添加缩放、滑块缩放、拾取坐标、鹰眼、全屏控件(提供Gitee源码)

    目录 一、案例截图 二、安装OpenLayers库 三、代码实现 四、Gitee源码 一、案例截图 二、安装OpenLayers库 npm install ol 三、代码实现 废话不多说&#xff0c;直接给完整代码&#xff0c;替换成自己的KEY即可运行&#xff1a; <template><div><div i…

    Vulnhub-Tr0ll靶机笔记

    Tr0ll靶机笔记 概述 靶机地址&#xff1a;https://www.vulnhub.com/entry/tr0ll-1,100/ 这台靶机比较简单&#xff0c;包含ftp的渗透&#xff0c;pcap流量包的分析&#xff0c;常规的web渗透和系统内核提权。让我们开始吧 Hack it&#xff01; 一、nmap扫描 1、端口扫描 …

    高效建站指南:通过Portainer快速搭建自己的在线网站

    文章目录 前言1. 安装Portainer1.1 访问Portainer Web界面 2. 使用Portainer创建Nginx容器3. 将Web静态站点实现公网访问4. 配置Web站点公网访问地址4.1公网访问Web站点 5. 固定Web静态站点公网地址6. 固定公网地址访问Web静态站点 前言 Portainer是一个开源的Docker轻量级可视…