当前位置: 首页 > news >正文

Python cv2滤波与模糊处理:从原理到实战

在图像处理领域,滤波与模糊是预处理阶段的两大核心操作,既能消除噪声干扰,又能实现艺术化效果。本文将结合OpenCV的cv2库,系统讲解滤波与模糊的原理及Python实现,带你从理论到实战全面掌握这项技术。

一、滤波与模糊的核心概念

1.1 滤波的本质

滤波的本质是通过卷积操作对像素进行重新计算,常用场景包括:

  • 去噪:消除传感器或传输产生的噪声
  • 特征提取:增强边缘/纹理等特定信息
  • 预处理:为后续操作(如边缘检测)优化图像质量

1.2 模糊的双重作用

模糊处理是特殊的低通滤波,主要实现:

  • 降噪:平滑高频噪声
  • 艺术效果:实现景深模糊、运动模糊等特效

二、四大经典滤波器详解

2.1 均值滤波(Average Blur)

原理:用邻域像素的平均值替换中心像素
特点:计算简单但会模糊边缘
代码实现

import cv2
import numpy as npimg = cv2.imread('input.jpg')
# 创建5x5均值滤波核
kernel = np.ones((5,5), np.float32)/25
blurred = cv2.filter2D(img, -1, kernel)
# 或直接使用cv2.blur
# blurred = cv2.blur(img, (5,5))

2.2 高斯滤波(Gaussian Blur)

原理:根据高斯分布分配权重,中心像素权重更高
优势:在降噪同时更好保留边缘
参数解析

# kernel_size必须为正奇数,sigmaX=0时自动计算
gaussian = cv2.GaussianBlur(img, (5,5), 0)

2.3 中值滤波(Median Blur)

原理:用邻域像素中值替换中心像素
特长:对椒盐噪声(盐粒噪声)效果卓越
代码示例

median = cv2.medianBlur(img, 5)  # 核尺寸必须为奇数

2.4 双边滤波(Bilateral Filter)

原理:同时考虑空间距离和像素差值
特点:实现保边去噪的神奇效果
参数调优

# d:像素邻域直径,sigmaColor/sigmaSpace:颜色/空间标准差
bilateral = cv2.bilateralFilter(img, d=9, sigmaColor=75, sigmaSpace=75)

三、实战对比分析

3.1 噪声模拟与处理

# 添加高斯噪声
def add_gaussian_noise(image, mean=0, sigma=25):row, col, ch = image.shapegauss = np.random.normal(mean, sigma, (row, col, ch))noisy = image.astype(np.int32) + gauss.astype(np.int32)return np.clip(noisy, 0, 255).astype(np.uint8)# 添加椒盐噪声
def add_salt_pepper_noise(image, prob=0.01):noisy = np.copy(image)# 盐噪声salt = np.random.rand(*image.shape[:2]) < prob/2noisy[salt] = 255# 椒噪声pepper = np.random.rand(*image.shape[:2]) < prob/2noisy[pepper] = 0return noisy

3.2 处理效果对比

噪声类型均值滤波高斯滤波中值滤波双边滤波
高斯噪声★★☆★★★★★☆★★★
椒盐噪声★☆☆★★☆★★★★★☆
边缘保留能力★☆☆★★☆★★☆★★★

(★越多表示效果越好)

四、进阶应用场景

4.1 背景虚化效果

# 提取前景后对背景应用大核高斯模糊
fg_mask = cv2.threshold(gray, 220, 255, cv2.THRESH_BINARY)[1]
bg_blur = cv2.GaussianBlur(img, (101,101), 0)
result = np.where(fg_mask[...,None], img, bg_blur)

4.2 运动模糊模拟

# 创建运动模糊核
kernel_size = 15
kernel = np.zeros((kernel_size, kernel_size))
kernel[int((kernel_size-1)/2), :] = 1/kernel_size
motion_blur = cv2.filter2D(img, -1, kernel)

4.3 实时视频处理

cap = cv2.VideoCapture(0)
while True:ret, frame = cap.read()if not ret: break# 实时应用双边滤波processed = cv2.bilateralFilter(frame, 9, 75, 75)cv2.imshow('Live Filter', processed)if cv2.waitKey(1) == 27: break  # ESC退出
cap.release()

五、参数调优指南

  1. 核尺寸选择

    • 通常选择3×3、5×5等奇数尺寸
    • 尺寸越大模糊效果越强,但计算量指数增长
  2. 高斯滤波sigma值

    • sigmaX=0时自动计算为0.3×((ksize-1)×0.5 - 1) + 0.8
    • 典型范围:1-100
  3. 双边滤波参数

    • d:通常取5-15
    • sigmaColor:控制颜色相似度,值越大影响范围越广
    • sigmaSpace:控制空间距离,值越大边缘越模糊

六、总结与展望

滤波与模糊技术是图像处理的基石,理解其原理和特性对解决实际问题至关重要。从均值滤波的简单粗暴到双边滤波的智能保边,每种算法都有其适用场景。未来随着深度学习的发展,传统滤波方法正与神经网络结合,催生出如引导滤波(Guided Filter)等新型算法,值得持续关注。

实践建议:尝试用不同参数处理同一张图片,通过对比观察效果差异,这是掌握滤波技术的最佳途径。


扩展阅读

  • OpenCV官方文档:https://docs.opencv.org/
  • 图像滤波数学原理:https://homepages.inf.ed.ac.uk/rbf/HIPR2/log.htm
  • 实时滤波性能优化技巧:使用cv2.UMat进行GPU加速处理

通过本文的系统学习,相信你已经掌握了滤波与模糊的核心技术。现在打开你的Python环境,开始图像处理的魔法之旅吧!

相关文章:

Python cv2滤波与模糊处理:从原理到实战

在图像处理领域&#xff0c;滤波与模糊是预处理阶段的两大核心操作&#xff0c;既能消除噪声干扰&#xff0c;又能实现艺术化效果。本文将结合OpenCV的cv2库&#xff0c;系统讲解滤波与模糊的原理及Python实现&#xff0c;带你从理论到实战全面掌握这项技术。 一、滤波与模糊的…...

【SpringBoot3】idea找不到log符号

解决idea找不到log符号&#xff0c;Slf4j注解不起作用 如图 解决办法 pom.xml文件里要手动添加版本号 插件也要添加对应的版本号 <dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.18.30&l…...

Android学习总结之Java和kotlin区别

一、空安全机制 真题 1&#xff1a;Kotlin 如何解决 Java 的 NullPointerException&#xff1f;对比两者在空安全上的设计差异 解析&#xff1a; 核心考点&#xff1a;Kotlin 可空类型系统&#xff08;?&#xff09;、安全操作符&#xff08;?./?:&#xff09;、非空断言&…...

C++笔记-二叉搜索树(包括key,key/value搜索场景等)

1.二叉搜索树的概念 二叉搜索树又称二叉排序树&#xff0c;它或者是一棵空树&#xff0c;或者是具有以下性质的二叉树: 1.若它的左子树不为空&#xff0c;则左子树上所有结点的值都小于等于根结点的值若它的右子树不为空&#xff0c;则2.右子树上所有结点的值都大于等于根结点…...

【从零开始学习RabbitMQ | 第二篇】生成交换机到MQ的可靠性保障

目录 ​编辑前言 交换机 Direct交换机与Fanout交换机的差异 Topic交换机 Topic交换机相比Direct交换机的差异 生成我们的交换机&#xff0c;队列&#xff0c;以及绑定关系 基于代码去生成交换机和队列 基于注解去声明队列和交换机 消息转换器 消息队列的高可靠性 发送…...

在 Sheel 中运行 Spark:开启高效数据处理之旅

在大数据处理领域&#xff0c;Apache Spark 凭借其强大的分布式计算能力&#xff0c;成为了众多开发者和企业处理海量数据的首选工具之一。而 Sheel 作为一种便捷的运行环境&#xff0c;在其中运行 Spark 可以充分发挥两者优势&#xff0c;实现高效的数据处理与分析。本文将详细…...

前端、XSS(跨站脚本攻击,Cross-Site Scripting)

XSS 攻击的三种主要类型 存储型 XSS&#xff08;持久型&#xff09; 原理&#xff1a;恶意脚本被永久存储在服务器&#xff08;如数据库、评论内容&#xff09;&#xff0c;用户访问包含恶意脚本的页面时触发示例&#xff1a;攻击者在论坛的评论区提交 &#xff0c;其他用户查…...

第六节:图像基本操作-像素级操作

一、数字图像处理基础 1.1 图像数字化原理 数字图像本质上是二维离散信号&#xff0c;由按矩阵排列的像素点构成。每个像素点的数值代表特定位置的亮度或色彩信息... 1.2 OpenCV核心数据结构 import cv2 import numpy as np# 读取图像文件 img cv2.imread(image.jpg)# 获取…...

【东枫科技】代理销售 NVIDIA DGX Spark 您的桌上有一台 Grace Blackwell AI 超级计算机。

NVIDIA GB10 Grace Blackwell超级芯片 FP4 AI 性能达到 1,000 AI TOPS 128GB 一致、统一的系统内存 ConnectX-7 智能网卡 高达 4TB 存储空间 150毫米长 x 150毫米宽 x 50.5毫米高 NVIDIA DGX™ Spark 搭载 NVIDIA GB10 Grace Blackwell 超级芯片&#xff0c;以节能紧凑的外形提…...

即插即用!长安汽车复旦提出LMPOcc:长期记忆先验实现占用预测任务新SOTA

导读 在基于视觉的自动驾驶感知算法当中&#xff0c;3D语义占用预测任务可以出色的对静态场景和动态目标同时进行建模&#xff0c;实现细粒度的场景理解&#xff0c;目前受到了来自学术界和工业界的广泛关注。 ©️【深蓝AI】编译 论文题目&#xff1a;ConRFT: A Reinfo…...

Kubernetes弹性伸缩:让应用自动应对流量洪峰与低谷

&#x1f680; Kubernetes弹性伸缩&#xff1a;让应用自动应对流量洪峰与低谷 &#x1f30d; 什么是弹性伸缩&#xff1f; 弹性伸缩&#xff08;Auto Scaling&#xff09;是指系统能够根据实时负载自动调整计算资源&#xff0c;以优化性能并降低成本。在 Kubernetes&#xff0…...

深入解析 Linux/Unix 通信机制:从原理到观测实践

深入解析 Linux/Unix 通信机制&#xff1a;从原理到观测实践 配图建议&#xff1a;Linux系统架构与通信机制全景示意图 一、开篇&#xff1a;理解“一切皆文件”的哲学 Unix/Linux 操作系统的核心灵魂在于其独特的设计哲学。当 Dennis Ritchie 和 Ken Thompson 在贝尔实验室开…...

Vue 2.0 详解全教程(含 Axios 封装 + 路由守卫 + 实战进阶)

目录 一、Vue 2.0 简介1.1 什么是 Vue&#xff1f;1.2 Vue 2.x 的主要特性 二、快速上手2.1 引入 Vue2.2 创建第一个 Vue 实例 三、核心概念详解3.1 模板语法3.2 数据绑定3.3 事件绑定3.4 计算属性 & 侦听器 四、组件系统4.1 定义全局组件4.2 单文件组件&#xff08;*.vue …...

《Python星球日记》 第36天:线性代数基础

名人说&#xff1a;路漫漫其修远兮&#xff0c;吾将上下而求索。—— 屈原《离骚》 创作者&#xff1a;Code_流苏(CSDN)&#xff08;一个喜欢古诗词和编程的Coder&#x1f60a;&#xff09; 专栏&#xff1a;《Python星球日记》&#xff0c;限时特价订阅中ing 目录 一、标量、…...

使用 Spring Boot 构建 REST API

使用 Spring Boot 构建 REST API 使用 Spring Boot 构建 REST API1. Spring Initializr构建springboot2. API 合同 & JSONAPI 协定什么是 JSON&#xff1f; 3.先测试什么是测试驱动开发&#xff1f;测试金字塔Red&#xff0c; Green&#xff0c; Refactor 循环 4. 实施 GET…...

PHP分页显示数据,在phpMyadmin中添加数据

<?php $conmysqli_connect(localhost,root,,stu); mysqli_query($con,"set names utf8"); //设置字符集为utf8 $sql"select * from teacher"; $resultmysqli_query($con,$sql); $countmysqli_num_rows($result); //记录总条数$count。 $pagesize10;//每…...

Spring Boot操作MongoDB的完整示例大全

以下是基于Spring Boot操作MongoDB的完整示例大全&#xff0c;涵盖增删改查、聚合查询、索引、事务等核心功能&#xff1a; 一、基础CRUD操作 1. 环境配置 依赖配置&#xff08;pom.xml&#xff09; <dependency><groupId>org.springframework.boot</groupId…...

SpringCloud入门教程合集(1)-SpringCloud简介与Eureka+Feign实现服务注册中心、服务提供与服务消费

场景 SpringCloud 总体架构与核心子项目 SpringCloud 总体架构 1. 基础设施层 服务注册与发现&#xff1a;Eureka/Nacos 配置中心&#xff1a;Spring Cloud Config/Nacos 消息总线&#xff1a;Spring Cloud Bus 2. 服务通信层 负载均衡&#xff1a;Ribbon/LoadBalancer…...

【Linuc】深入理解 Linux 文件权限

文章目录 一、权限基础解析1. 权限三元组2. 权限类型与数字映射二、查看文件权限三、修改权限实战1. chmod 命令符号模式数字模式(推荐)2. chown 修改归属四、特殊权限机制1. SetUID (Set User ID)2. SetGID (Set Group ID)3. Sticky Bit五、高级权限管理1. 默认权限控制2. A…...

ExtraMAME:复古游戏的快乐“时光机”

嘿&#xff0c;小伙伴们&#xff01;今天电脑天空要给大家安利一款超有趣的软件——ExtraMAME&#xff01;如果你对复古街机游戏念念不忘&#xff0c;那它绝对能成为你的快乐源泉&#xff0c;带你瞬间穿越回那个充满游戏机的黄金时代。 ExtraMAME是一款基于MAME&#xff08;Mu…...

没有 Mac,如何把 iOS App 成功上架?

开发者的 iOS 上架折腾记&#xff1a;没有 Mac&#xff0c;也能搞定&#xff1f; 最近在帮朋友把一个跨平台 Flutter 项目上架到 App Store&#xff0c;结果被 iOS 上架的那套流程卡得头都大了。其实这也不是第一次碰壁了——每次到“申请证书 打包 上传”的时候&#xff0c…...

使用VMware Workstation pro 17.5.1在Windows上安装Ubuntu 24.04.2的 详细步骤

一、准备工作 1. 下载Ubuntu 24.04.2 ISO镜像 官方下载地址&#xff1a;Ubuntu 24.04.2 (Noble Numbat) 选择 ubuntu-24.04.2-desktop-amd64.iso&#xff08;桌面版&#xff09;或 ubuntu-24.04.2-live-server-amd64.iso&#xff08;服务器版&#xff09;。 2. 确认系统要求…...

栈与队列详解及模拟实现

目录 ​​一、栈&#xff08;Stack&#xff09;&#xff1a;后进先出​ ​​1.1 什么是栈​ ​​1.2 栈的使用​​ ​​1.3 栈的模拟实现​ ​​1.4 栈的经典应用​​ ​​二、队列&#xff08;Queue&#xff09;&#xff1a;先进先出​ ​​2.1 什么是队列 2.2 队列的使…...

Cursor无法SSH远程连接服务器免密登录问题

在本地机器和Ubuntu服务器之间实现SSH远程免密连接&#xff0c;可按如下步骤操作&#xff1a; 1. 生成SSH密钥对 在本地机器上开启终端&#xff0c;使用以下命令生成SSH密钥对&#xff1a; ssh-keygen -t rsa按提示操作&#xff0c;一般直接回车&#xff0c;这样密钥会生成在…...

【Vue】全局事件总线 TodoList 事件总线

目录 一、 实现所有组件看到x事件 二、 实现$on $off 以及 $emit 总结不易~ 本章节对我有很大的收获&#xff0c; 希望对你也是&#xff01;&#xff01;&#xff01; 本节素材已上传至Gitee&#xff1a;yihaohhh/我爱Vue - Gitee.com 全局事件总线图&#xff1a; 本节素材…...

动态规划背包问题

一、0-1背包问题 0-1背包问题就是给定n个物品和一个容量为C的背包&#xff0c;物品i的重量是Wi,其价值是Vi。问&#xff1a;应该如何选择装入背包的物品&#xff0c;使总价值最大且总重量不超过C&#xff1f; 1.确定状态表示 dp[i][j] 表示在背包容量为j时&#xff0c;从下标…...

ctfshow web入门 web49

信息收集 此%非彼%&#xff0c;%0a中的%不会被识别&#xff0c;因为识别之前就已经自动转化为了换行符 所以和之前一样的解法&#xff0c;没什么好说的 if(isset($_GET[c])){$c$_GET[c];if(!preg_match("/\;|cat|flag| |[0-9]|\\$|\*|more|less|head|sort|tail|sed|cut|…...

AI+浏览器自动化:Nanobrowser Chrome 扩展的使用「详细教程」

AI+浏览器自动化:Nanobrowser Chrome 扩展的使用「详细教程」 一、前言二、Nanobrowser简介2.1 项目背景2.2 核心特性三、安装与配置3.1 安装方式3.1.1 Chrome Web Store安装3.1.2 手动安装最新版3.2 基本配置3.2.1 添加API Key3.2.2 选择模型3.2.3 其他设置四、核心功能详解4…...

【表设计】外键的取舍-分布式中逐渐消失的外键

在分布式大行其道的今天&#xff0c;为什么外键约束越来越少&#xff1f; 外键-数据链接带来强制完整性 在关系型数据库中&#xff0c;外键&#xff08;Foreign Key&#xff09;可以用于建立和强制两个表之间的数据链接。 在层次数据结构一篇的闭包表简单设计中&#xff0c;…...

HarmonyOS 5.0 分布式数据协同与跨设备同步​​

大家好&#xff0c;我是 V 哥。 使用 Mate 70有一段时间了&#xff0c;系统的丝滑使用起来那是爽得不要不要的&#xff0c;随着越来越多的应用适配&#xff0c;目前使用起来已经和4.3的兼容版本功能差异无碍了&#xff0c;还有些纯血鸿蒙独特的能力很是好用&#xff0c;比如&am…...

多行文本省略

方式1 兼容性不好 height: 100px; line-height: 25px; overflow: hidden; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 4;方式2 利用浮动环绕、空白元素站位margin-top调整位置 <div class"wrap"><div class"more"…...

Adobe卸载清理工具Creative Cloud Cleaner Tool下载

Adobe Creative Cloud Cleaner Tool 是 Adobe 公司官方推出的一款卸载清理工具&#xff0c;主要用于清理 Creative Cloud 应用程序在安装、更新或卸载过程中可能遗留下来的错误配置文件、缓存、注册表项或其他系统级残留内容。相比一般的卸载程序&#xff0c;它更深入地处理系统…...

分布式、高并发-Day03

以下是 Day 3 详细学习内容&#xff08;线程池拒绝策略实战&#xff1a;DiscardOldestPolicy与CallerRunsPolicy&#xff0c;30 分钟完整计划&#xff09;&#xff0c;包含策略原理、分步代码实战和场景解析&#xff1a; &#x1f4d6; 今日学习目标 掌握DiscardOldestPolicy…...

高等数学第四章---不定积分(4.4有理函数的不定积分2)

&4.4有理函数的不定积分2 篇幅有限制&#xff0c;例题的解答会占大量字符&#xff0c;html限制字符为22000个左右。这里继续探讨上文的有理函数的不定积分。 一、三角函数有理式的不定积分 由 sin ⁡ x \sin x sinx, cos ⁡ x \cos x cosx 以及常数经过有限次加、减、…...

C++中指针使用详解(4)指针的高级应用汇总

C 中指针的高级应用非常丰富&#xff0c;掌握这些内容能让你写出更高性能、更底层控制力强的代码。下面是应用模块梳理和例子讲解。 目录预览 函数指针与回调机制指针数组 vs 数组指针指针与类成员函数&#xff08;成员函数指针&#xff09;智能指针&#xff08;unique_ptr, s…...

Java 8 非对称加密代码示例

以下是使用Java 8实现RSA非对称加密的完整代码示例&#xff0c;包括密钥生成、加密和解密过程。 1. 生成RSA密钥对 import java.security.*; import java.security.spec.PKCS8EncodedKeySpec; import java.security.spec.X509EncodedKeySpec; import java.util.Base64; impor…...

Linux环境基础与开发工具使用

1. Linux编译器vim 1.1 vim的基本概念讲解 vim有很多种模式&#xff0c;我们初学者常用的就是命令模式&#xff08;command mode&#xff09;、插入模式&#xff08;Insert mode&#xff09;和底行模式&#xff08;last line mode&#xff09;。 命令/正常模式(Normal mode) …...

【BUG】‘DetDataSample‘ object has no attribute ‘_gt_sem_seg‘

问题&#xff1a; 使用mmdetection框架使用COCO格式训练自定义数据集时&#xff0c;其中模型使用HTC模型时出现如下问题&#xff1a; AttributeError: ‘DetDataSample’ object has no attribute ‘_gt_sem_seg’. Did you mean: ‘gt_sem_seg’? results self(**data, mode…...

C# Winforms 本地化 多语言支持 字符串资源

初级代码游戏的专栏介绍与文章目录-CSDN博客 我的github&#xff1a;codetoys&#xff0c;所有代码都将会位于ctfc库中。已经放入库中我会指出在库中的位置。 这些代码大部分以Linux为目标但部分代码是纯C的&#xff0c;可以在任何平台上使用。 源码指引&#xff1a;github源…...

ts bug 找不到模块或相应类型的声明,@符有红色波浪线

解决方法&#xff1a;在env.d.ts文件中添加以下代码&#xff0c;这段代码是一个 TypeScript 的声明文件&#xff0c;用于让 TypeScript 知道如何处理 Vue 单文件组件&#xff08;.vue 文件&#xff09;的导入。 /// <reference types"vite/client" /> // 声明…...

赛灵思 XCZU11EG-2FFVC1760I XilinxFPGAZynq UltraScale+ MPSoC EG

XCZU11EG-2FFVC1760I 是 Zynq UltraScale MPSoC EG 系列中性能最强的器件之一&#xff0c;集成了四核 ARM Cortex-A53 应用处理器、双核 Cortex-R5 实时处理器与 Mali-400 MP2 GPU&#xff0c;并结合了 653,100 个逻辑单元与丰富的片上存储资源&#xff0c;可满足高性能计算、A…...

VSCode|IDEA|PyCharm无缝接入DeepSeek R1实现AI编程

文章目录 前言一、流程简介1. 获取DeepSeek R1的API密钥2. 在编程软件中下载安装 Continue 插件**IDEA**PyCharm 3. 配置Continue文件 二、使用体验利用 DeepSeek R1进行 AI 编程 前言 本文将介绍如何在 VSCode|IDEA|PyCharm 软件中接入 DeepSeek R1 实现 AI 编程&#xff0c;…...

深入浅出 PostgreSQL:从历史演进到高阶优化技术

引言 PostgreSQL 是一个免费开源的对象关系型数据库&#xff0c;既支持传统的 SQL 查询&#xff0c;也支持 JSON 等非关系数据类型&#xff0c;因其高度可扩展性和社区活跃度&#xff0c;已成为众多互联网、金融和企业级应用的首选数据库 (Introduction to PostgreSQL - W3Sch…...

塔能水泵节能方案:精准驱动工厂能耗优化

在工厂的能源消耗体系中&#xff0c;水泵作为关键的动力设备&#xff0c;其运行效率直接关系到整体能耗水平。传统水泵在长期运行中&#xff0c;受设计局限、工艺成本约束等因素影响&#xff0c;普遍存在效率低下、能源浪费严重的问题。塔能科技针对这一痛点&#xff0c;推出了…...

SSCLMD模型代码实现详解

SSCLMD模型代码实现详解 1. 项目源码结构 SSCLMD项目的源码结构如下&#xff1a; SSCLMD-main/ ├── README.md ├── ST4.xlsx ├── Supplementary File.docx ├── code/ │ ├── calculating_similarity.py │ ├── data_preparation.py │ ├── data_…...

【coze】故事卡片(图片、音频、文字)

【coze】故事卡片&#xff08;图片、音频、文字&#xff09; 1、创建智能体2、添加人设与回复逻辑3、添加工作流&#xff08;1&#xff09;创建工作流&#xff08;2&#xff09;添加大模型节点&#xff08;3&#xff09;添加提示词优化节点&#xff08;4&#xff09;添加豆包图…...

限免开关实施版本保护措施,保证项目灰度发布安全

迭代用户限免权限校验业务 新增限免开关实现普通用户权益更新&#xff0c;实施版本保护措施&#xff0c;保证项目灰度发布安全&#xff1b; // 是否展示限免标识 func (t *BasePrivilegeService) IsPromotionFree(p consumParams) bool {// 限免开关isFreeUseOpen : p.cfg.Vip…...

C#中从本地(两个路径文件夹)中实时拿图显示到窗口中并接收(两个tcp发送的信号)转为字符串显示在窗体中实现检测可视化

多窗口源码 C#中从本地&#xff08;两个路径文件夹&#xff09;中实时拿图显示到窗口中并接收&#xff08;两个tcp发送的信号&#xff09;转为字符串显示在窗体中实现检测可视化资源-CSDN文库 读图结果展示 字符串结果展示 利用TCP调试工具创建两个tcp 再次启动程序 就链接…...

了解一下OceanBase中的表分区

OceanBase 是一个高性能的分布式关系型数据库&#xff0c;它支持 SQL 标准的大部分功能&#xff0c;包括分区表。分区表可以帮助管理大量数据&#xff0c;提高查询效率&#xff0c;通过将数据分散到不同的物理段中&#xff0c;可以减少查询时的数据扫描量。 在 OceanBase 中操…...

生成了一个AI算法

import torch import torch.nn as nn import torch.optim as optim from torchvision import datasets, transforms # 1. 数据预处理 transform transforms.Compose([ transforms.ToTensor(), transforms.Normalize((0.5,), (0.5,)) # MNIST单通道归一化 ]) train_da…...