一、行业痛点与数字化转型需求在石油化工、能源电力、市政水务及精细化工等流程工业中,管道网络是维持生产运行的“生命线”。 管道设备漏水漏油识别检测系统应运而生,该系统旨在通过现场已安装的监控摄像头,结合先进的计算机视觉算法,对管道设备状态进行24小时不间断的智能监测。 漏水/透明液体识别:针对水等透明介质,算法重点捕捉液体流动的动态纹理、反光变化以及浸润区域的边缘扩张速率,甚至能识别高压喷射产生的雾状水汽。 四、实测性能与环境挑战根据行业主流解决方案在2025年发布的实验室标准测试数据(清晰图像、模拟泄漏场景):明显漏油(深色液体)识别准确率可达96.2%;清水泄漏识别准确率约为88.5%(受背景颜色影响较大 六、结语管道设备漏水漏油识别检测系统的核心价值,在于激活了沉睡的视频资产,构建了一张全天候、无死角的工业安全感知网。
在全球范围的配水系统中,漏水一直是一个难以解决的主要问题,据粗略统计配水系统中约有20%的损失由漏水造成,同时管道漏水也会对相关基建设施造成危害。 这个问题之所以难以解决是因为配水系统复杂庞大,在今天精确的漏水检测系统仍然昂贵和运行缓慢,麻省理工学院MIT学院开发了一种低成本简易机器人装置,可以快速精确地发现指定配水系统的漏水点,即使细小的漏洞都能检测出来 其外壳基本由橡胶构成,前半部分像是饮料瓶上半部分的软体机器人,后半部分是"裙状"感应器,机器人装置进入配水系统后能够被动地运动,实时记录其位置参数以及感应到的各种震动及压力,通过算法分析出漏水具体的位置 Kamal Youcef-Toumi教授曾在沙特阿拉伯测试中,通过该装置发现了一处导致每分钟一加仑的漏水孔,也能够发现其它检测手段能够检测到的漏水孔平均下限口径更小十分之一的细微漏水点。 ? 团队现在正计划创建更具灵活性、可伸缩的机器人版本,能够自适应在不同口径管道中进行漏水探测。
数据集格式:Pascal VOC格式+YOLO格式(不包含分割路径的txt文件,仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数):2614 标注数量(xml文件个数):2614 标注数量(txt文件个数):2614 标注类别数:4 标注类别名称:["crack","leak","no leak","water"] 每个类别标注的框数: crack 框数 = 187 leak 框数 = 1187 no leak 框数 = 465 water 框数 = 851 总框数:2690 使用标注工具:labelImg 标注规则:对类别进行画矩形框 重要说明:数据集有部分增强图片,请仔细查看图片谨慎下载 特别声明:本数据集不对训练的模型或者权重文件精度作任何保证,数据集只提供准确且合理标注
在化工、制药、食品加工、能源等流程工业中,管道系统的跑冒滴漏不仅造成物料浪费,还可能引发滑倒、腐蚀、环境污染甚至火灾爆炸等次生风险。 为提升过程安全水平,部分企业部署了“管道漏液跑冒滴漏识别摄像机”。然而,市场宣传中常出现“准确识别漏水点”“立即发出警报”“消除漏检误判”等夸大表述,不仅技术上不严谨,还可能引发对系统能力的误判。 需强调:AI无法“准确识别漏水点”或判断液体类型,仅能对地面可见的液体动态异常进行初判,例如:持续滴落:液体从管道接口周期性滴落;地面积聚扩展:新出现的深色区域缓慢扩大;沿斜面流动:液体在设备基座或导流沟中形成明显流动轨迹 系统无法实现:定位具体泄漏点(如“法兰第3号螺栓处”)——仅能提示“某区域下方有异常”;区分水、油、冷凝液或化学溶剂(普通RGB摄像头难以分辨颜色与反光差异);检测无可见积聚的微渗、气态挥发或内部管道破裂 结语AI在管道泄漏监测中的角色,不是“泄漏定位仪”,而是“数字眼睛”。它无法告诉你“哪里漏了”,但可以提醒你“这里好像有异常”。
液体泄露识别检测算法通过 yolov8+python网络模型技术,液体泄露识别检测算法对管道的液体泄露情况进行全天候不间断实时监测,检测到画面中管道设备液体泄露现象时,将自动发出警报提示。 识别管道泄露算法模型中Head: Head部分较yolov5而言有两大改进:1)换成了目前主流的解耦头结构(Decoupled-Head),将分类和检测头分离 2)同时也从 Anchor-Based 换成了 液体泄露识别检测算法yolov8部分而Backbone和Neck的具体变化 a) 第一个卷积层的 kernel 从 6x6 变成了 3x3。
自动语音识别(ASR)算法允许我们使用口语与设备、设备和服务进行交互。 本次PPT的演讲主题和演讲人: ? 语音识别应用于Siri、谷歌Voice和Amazon Echo等云服务中,越来越受欢迎,这大大增加了对ASR推理的计算需求。 我们现在正在为我们的gpu加速管道提供低延迟的在线ASR支持,为您现有的Kaldi模型带来数量级的加速。该技术既可用于数据中心的高吞吐量ASR云服务,也可用于Jetson家族的低功耗嵌入式设备。
),然后用户层缓冲区通过系统调用(write)写到管道里,然后再通过read系统调用,被对方(读端)读取,就要从管道拷贝到读端,然后再显示到显示器上。 通信是为了更好的发送变化的数据,管道本质上是文件 所以必须要用到系统调用接口来访问管道,其是由系统管理,read和write ,操作系统相当于中介 结论:管道的特征: 1:具有血缘关系的进程进行进程间通信 2:管道只能单向通信 3:父子进程是会进程协同的,同步与互斥的--保护管道文件的数据安全 4:管道是面向字节流的 5:管道是基于文件的,而文件的生命周期是随进程的 再测试,把子进程sleep去掉,就是让子进程写快一点 ,父进程sleep几秒,就是让父进程读慢一点,看有什么现象 管道的四种情况 测试管道大小 把c一直往管道里写,把父进程中休眠50秒 结果差不多64kb 写端退了,测试结果 结果是: 读端正常读,写端关闭 ,还得把用户层缓冲区拷贝到管道里,(从键盘里输入数据到用户层缓冲区里面),然后用户层缓冲区通过系统调用(write)写到管道里,然后再通过read系统调用,被对方(读端)读取,就要从管道拷贝到读端,然后再显示到显示器上
以太网漏水检测系统:控制器、模块与传感器技术解析添加图片注释,不超过 140 字(可选)在数据中心、机房、仓储库房、智能楼宇等场景中,管道渗漏、设备凝露、地面积水等漏水问题,可能导致服务器宕机、电气短路 ~60℃,防护等级 IP67(可短暂浸泡);◦ 适用场景:设备底部(如空调外机、服务器机柜下方)、管道接口处(如水管、空调冷凝水管接头)等固定点漏水监测。 场景痛点机房内空调冷凝水管、消防管道、UPS 电池组凝露等漏水风险,可能导致服务器短路、数据丢失,需 24 小时不间断监控,且要求精准定位漏水点。2. (三)智能楼宇管道漏水监控1. 场景痛点楼宇内给排水管道(如卫生间、茶水间)、暖气管道漏水可能渗透至楼下,导致财产损失,需覆盖多楼层且支持物业远程监管。2. 实施方案• 分层部署:每楼层卫生间管道下方安装点式传感器,暖气管道沿线铺设绳式传感器,每层配置 1 台漏水检测模块(12VDC 供电,接入楼宇局域网);• 远程管控:所有模块接入楼宇中控室的以太网漏水检测控制器
一、隐藏在数据中心的水灾隐患 1 机房在顶层由于屋内漏水造成水灾。 2 机房在底层由于上下水管道堵塞造成水灾。 3 机房内暖气系统漏水。 4 由于水冷系统设计不当,或损坏漏水。 5 空调系统排水管设计不当或破损漏水。 6 机房区内水源检修阀漏水。 7 机房内有卫生间,由于下水管道或地漏堵塞。 2 机房由于使用恒温湿装置,一般情况下应不使用暖气系统、但对于特别寒冷的地区,必须使用暖气时,一方面在暖气下应设立防水槽,万一暖气漏水,也会顺利脱离机房;另一方面可以采用钢串片式暖气片,管道全部采用焊接 3 若机房内有水管通过时,应采取保温措施,管道阀门不应设在机房内。 4 有上下水的房间和卫生间应远离机房。 5 有机房内应设防水沟或地漏 6 机房内必须安装水源时,应加强管理,防患于未然。 3、机房建在楼顶层的单位,应定期检查机房屋面有无渗水漏水的情况。 4、机房建在楼顶层的单位,应定期清除屋顶排雨水装置的堵塞物,保障雨水泄水管道的畅通无阻。 5、防水雨水从窗子渗入。
命名管道 什么是命名管道 命名管道,也称为 FIFO(First In First Out),是一种 进程间通信(IPC) 机制,它允许不相关的进程(即没有父子关系的进程)通过文件系统中的特殊文件进行数据传输 命名管道 vs. 无名管道 类型 说明 适用场景 匿名管道 pipe() 创建,仅限于父子进程之间通信 适用于父进程创建子进程并通信 命名管道 mkfifo() 创建,存在于文件系统中,可用于任意进程间通信 适用于独立进程间通信 如何创建命名管道 手动创建命名管道: mkfifo FIFO 这个FIFO也是一个文件,被操作系统特殊标记过,是管道文件。 ,我们封装一个类,用于管理管道文件的创建和销毁,声明一个全局变量,构造函数用于创建管道,析构函数用于销毁管道,由于全局变量的生命周期是和程序一样的,所以当程序结束的时候管道文件也跟着销毁,也意味着通信结束
父进程向以写方式打开的文件的管道文件写入,子进程再从以读方式打开的文件的管道文件读取,从而实现管道通信。如果是要子进程向父进程传输数据,同理即可。 管道里的内容不需要刷新到磁盘 2.2 创建匿名管道 匿名管道:没有名字的文件(struct file) 匿名管道用于父子间通信,或者由一个父创建的兄弟进程(必须有“血缘“)之间进行通信 #include 2.3 匿名管道通信案例(父子通信) 注意:匿名管道需要在创建子进程之前创建,因为只有这样才能复制到管道的操作句柄,与具有亲缘关系的进程实现访问同一个管道通信 情况一:管道为空 && 管道正常(read 就会阻塞 4.4 匿名管道与命名管道的区别 匿名管道与命名管道的区别 匿名管道由 pipe函数 创建并打开。 管道分为两种类型:无名管道和命名管道 无名管道主要用于具有亲缘关系的进程(如父子进程),在创建时不需要名称,只能通过文件描述符进行访问 命名管道(FIFO)则可以在任何进程之间通信,使用文件系统中的路径来标识
NB-IOT智能水表远程抄表系统能够随时远程抄读数据、监控用水信息,包括漏水、欠费、欠费等数据都可以实时监控,可以随时控制停水。 通常大家在选择水表口径应根据安装地点的管道直径及流量等于或小于水表常用流量为依据来选择适宜口径的水表。 安装时(特别是新管段)应避免麻丝、胶带、砂石等杂物进入水表管道内,造成水表计量故障。为了计量准确,水表出水口管道安装应高于水表不少于0.5米、在水表前面管道上应安装阀门以便在拆卸水表时可以关闭水源。 水表不应直接与管道连接,水表与管道间应有活接头(如管接头、连接螺母、接管密封垫圈等)。拆装水表时,切不可用力硬扳,以免损坏水表。同时,安装时须使表壳上水流指示箭头与水流方向保持一致。 通过在水管网络中部署漏水传感器,LoRaWAN网络能够实时监测水压变化,迅速识别漏水点。一旦发现漏水,系统可通过LoRaWAN网络发送实时报警,使水务公司能够迅速响应,减少水损失。
这一卓越性能远超行业平均水平,使得听澜噪声记录仪能够精准捕捉到管道内极其微弱的漏水噪声。这正是康高特(KGT)在传感器技术上的突破,也是康高特(KGT)持续研发的成果。 压电陶瓷传感器利用压电效应,将管道振动产生的微小声波能量高效转化为电信号,其高信噪比特性确保了即使在背景噪声较高的复杂管网环境或低水压条件下,也能有效识别出淹没在环境噪声中的漏水特征声。 该AI算法基于深度学习框架和海量历史漏水声学数据进行训练,能够智能识别并有效过滤各类环境干扰噪声。它不仅能够提取漏水噪声的独特声学指纹,还能结合时间序列分析,对噪声信号进行多维度特征提取。 CNV算法负责识别并量化异常噪声的强度,而LCF算法则通过综合分析噪声的频谱特征、持续时间、变化趋势以及与已知漏水模式的匹配度,计算出漏损发生的置信度。 优秀的AI算法能够通过深度学习和模式识别,大幅提升漏水识别的准确率,降低误报率,实现从原始数据到智能研判的飞跃。
Redis管道是一种通过一次发出多个命令而不等待每个单独命令的响应来提高性能的技术。大多数Redis客户端都支持管道。本文档描述了管道旨在解决的问题以及Redis中管道的工作原理。 Redis自早期以来就支持管道,因此无论您运行的是哪个版本,都可以将管道与Redis一起使用。 当使用管道时,通常使用单个read()系统调用来读取多个命令,使用单个write()系统调用来传递多个回复。 因此,每秒执行的总查询数量最初随着管道长度的增加而几乎线性增长,并最终达到未使用管道时获得的基线的10倍,如下图所示: 示例 在接下来的基准测试中,我们将使用支持管道的Redis Ruby客户端来测试由于管道而带来的速度提升 管道 vs 脚本 使用Redis脚本[2](自Redis 2.6起可用),可以通过在服务器端执行大量所需工作的脚本来更有效地解决许多管道用例。
,只能写数据到管道里面 func writeChan(ch chan<- int) { ch <- 1 } //单向只读管道,只能从管道里面读出数据 func readChan(ch <-chan { value := <-ch fmt.Println(value) } 上面的例子,writeChan只能对ch变量进行写操作,readChan只能对ch变量进行读操作,这样造成很多同学对管道理解就有了只读和只写管道了 ,其实管道都是双向的,默认双向可读写,只是管道在函数参数传递时可以使用操作符限制管道的读写,就如上面的例子。 关于上面单向管道的例子,单向管道只能用于发送或者接受数据,但是go的管道其实是没有单向管道,所谓的单向管道只是对管道的一种使用限制,这个和c语言const修饰函数参数为只读是一个道理。 总结: go语言是没有只读管道,只写管道,单向管道。 所谓的只读管道,只写管道,单向管道只是对go的管道一种限制使用。
进程间通信的发展:管道System V进程间通信POSIX进程间通信管道:匿名管道pipe命名管道System V IPC:System V 消息队列System V 共享内存System V 信号量POSIX IPC:消息队列共享内存信号量互斥量条件变量读写锁二,管道管道是Unix中最古老的进程间通信的形式。 这样通信方式我们叫做匿名管道。管道的本质是一种文件。下面我们来简单的实现一个匿名管道:使用pipe系统调用来创建匿名管道。 因此管道可以让进程间协同,提供了访问控制。管道提供的是面向流式的通信服务,其生命周期随进程。从管道读数据是一次性操作,数据一旦被读,它就从管道中被抛弃,释放空间以便写更多的数据。 :命名管道与匿名管道的原理相同,都是通过让两个进程看到同一份资源,从而实现通信,但命名管道不再局限于父子进程之间,而是任意两个进程之间实现通信。
管道是Unix中最古老的进程间通信的形式 从一个进程连接到另一个进程的一个数据流称为一个“管道” 管道的原理: 管道只能进行单向通信。 管道不需要路径,也就不需要名字,所以叫做匿名管道。 这个过程是管道内部自己做的。 现象: 管道为空&&管道正常,read会阻塞(read是一个系统调用)。 管道为满(管道资源是有限的)&&管道正常,write会阻塞。 根据上面的分析,所有的子进程的file_struct都会指向第一个管道,越往后的子进程指向的管道越多。 所以不难得出,匿名管道两端必须是父子进程。而如果我们想在任意进程之间建立管道呢?
简化的遥测管道:使用接收器、处理器和导出器构建管道的能力,通过集中数据流和减少多个代理的需求,简化了遥测管理。 Logstash 管道定义 Logstash 管道由三个主要组件组成: Input Plugins:允许我们从不同来源读取数据。 Filters Plugins:允许我们转换和过滤数据。 Logstash 还有一个特殊的输入和一个特殊的输出,允许管道到管道的通信,我们可以将其视为类似于 OpenTelemetry 连接器的概念。 Logstash 管道与 OTEL Collector 组件的比较 我们可以将 Logstash 管道和 OTEL Collector 管道组件如何相互关联进行示意化: 理论够多了! OpenTelemetry Collector 管道来处理日志。
向管道(共享文件)提供输入的发送进程(即写进程),以字符流的形式将大量的数据送入(写)管道;而接受管道输出的接受进程(即读进程),则从管道接受(读)数据。 为了协调双方的通信,管道机制必须提供一下三个方面的协调能力:互斥、同步和确定对方存在。 下面以linux的管道为例进行说明。在linux中,管道是一种频繁使用的通信机制。 从本质上讲,管道也是一种文件,但它又和一般的文件有所不同,管道可以克服使用文件通信的两个问题,具体表现为: 1)限制管道的大小。实际上,管道是一个固定大小的缓冲区。 注意 :从管道读数据是一次性操作,数据一旦被读走,它就从管道中被抛弃,释放空间以便写更多的数据。管道只能采用半双工通信,即在某一时刻只能单向传输。要实现父子进程双方互动,需要定义两个管道。 2.有名管道 由于无名管道的局限性,仅限于有血缘关系的进程间通信,所以当需要在不同进程(无血缘关系的进程)之间通信,pipe就不能被使用了。取而代之是有名管道(fifo)。
Redis客户端与服务器之间使用TCP协议进行通信,并且很早就支持管道(pipelining)技术了。在某些高并发的场景下,网络开销成了Redis速度的瓶颈,所以需要使用管道技术来实现突破。 管道技术其实已经非常成熟并且得到广泛应用了,例如POP3协议由于支持管道技术,从而显著提高了从服务器下载邮件的速度。 在Redis中,如果客户端使用管道发送了多条命令,那么服务器就会将多条命令放入一个队列中,这一操作会消耗一定的内存,所以管道中命令的数量并不是越大越好(太大容易撑爆内存),而是应该有一个合理的值。 使用管道时,多个命令只会进行一次read()和wrtie()系统调用,因此使用管道会提升Redis服务器处理命令的速度,随着管道中命令的增多,服务器每秒处理请求的数量会线性增长,最后会趋近于不使用管道的 下面就来对比一下使用管道和不使用管道的速度差异。