- 博客(194)
- 收藏
- 关注
原创 深度学习实战基础案例——卷积神经网络(CNN)基于SqueezeNet的眼疾识别|第1例
SqueezeNet是一种轻量且高效的CNN模型,它参数比AlexNet少50倍,但模型性能(accuracy)与AlexNet接近。顾名思义,Squeeze的中文意思是压缩和挤压的意思,所以我们通过算法的名字就可以猜想到,该算法一定是通过压缩模型来降低模型参数量的。当然任何算法的改进都是在原先的基础上提升精度或者降低模型参数,因此该算法的主要目的就是在于降低模型参数量的同时保持模型精度。基础环境:python3.7编译器:pycharm深度学习框架:pytorch链接(提取码:2357 )
2023-08-13 15:12:15
13796
27
原创 最新版本的Anaconda环境配置、Cuda、cuDNN以及pytorch环境一键式配置流程
本教程是最新的深度学习入门环境配置教程,跟着本教程可以帮你解决入门深度学习之前的环境配置问题。同时,本教程拒绝琐碎,大部分以图例形式进行教程。
2023-08-12 12:05:05
8737
20
原创 基于PP-YOLOE-SOD实现遥感场景下的小目标检测
目标边界框的宽高与图像的宽高比例小于一定值目标边界框面积与图像面积的比值开方小于一定值分辨率小于32*32像素的目标。如MS-COCO数据集像素值范围在[10,50]之间的目标。如DOTA/WIDER FACE数据集paddle从数据集整体层面提出了如下定义:目标边界框的宽高与图像的宽高比例的中位数小于0.04时,判定该数据集为小目标数据集。目前,小目标检测主要有以下几个难点:覆盖面积小,有效特征少小目标下采样后丢失问题,边界框难以回归,模型难以收敛。
2023-03-16 19:43:16
4208
14
原创 从零开始学OpenCV——图像灰度变换详解(线性与非线性变换)
在实际应用中,为了突出图像中感兴趣的研究对象,常常要求增强某一灰度范围的对比度,或对不同范围的灰度值进行不同的处理,即分段线性拉伸。分段线性拉伸是仅将某一范围的灰度值进行拉伸,而其余范围的灰度值实际上被压缩了。阈值变换可以将灰度图像转换成黑白二值图像,用户指定一阈值T,灰度低于T置0,高于T置255。伽玛变换又称为 指数变换 或 幂次变换,是另一种常用的灰度非线性变换。输出图象每个象素点的灰度值仅由输入图像相同位置象素点的灰度值决定。时,该灰度变换是线性的,此时通过线性方式改变原图像。
2023-03-15 21:10:41
9953
7
原创 Python机器学习数据建模与分析——Numpy和Pandas综合应用案例:空气质量监测数据的预处理和基本分析
Python作为一款面向对象、跨平台并且开源的计算机语言,是机器学习实践的首选工具。入门Python机器学习应从了解并掌握Python的Numpy、Pandas、Matplotlib包开始。学习Python和完成机器学习实践的有效途径是:以特定的机器学习应用场景和数据作为出发点,沿着由浅入深的数据分析脉络,以逐个解决数据分析实际问题为目标,逐步展开对Python的学习和机器学习的实践。📢本文由 心无旁骛~ 原创,首发于 优快云博客🙉。
2023-01-21 19:31:44
5681
15
原创 华为 ModelEngine 低代码平台应用编排实践:可视化搭建客户咨询智能应答大模型工作流
在大模型应用落地过程中,“技术门槛高、开发周期长、难以适配业务场景” 是常见痛点。华为 ModelEngine 低代码平台的应用编排功能,通过 “可视化拖拽 + 模块化节点” 的方式,让非技术人员也能快速构建大模型应用工作流 —— 无需编写复杂代码,仅需通过节点配置、流程串联,就能实现从需求到可用应用的闭环。本文结合 “客户咨询智能应答” 场景,完整呈现应用编排的实践过程,覆盖基础节点使用、工作流开发与调试,以及自定义插件、智能表单的扩展能力。
2025-12-29 21:42:59
6812
原创 华为 ModelEngine Nexent低代码平台单智能体评测:数据分析智能体 —— 零代码实现数据洞察与可视化闭环
华为ModelEngine Nexent低代码平台推出单智能体数据分析解决方案,通过Docker一键部署实现快速安装。该方案支持配置大语言模型、向量模型和视觉语言模型,并集成本地文件操作工具和网络搜索功能。通过接入魔搭社区的MCP服务,可实现对数据的智能分析和可视化展示。整个流程无需复杂编程,从数据接入到图表输出实现全自动化,有效降低技术门槛,帮助用户快速将原始数据转化为决策依据。该平台特别适合缺乏编程基础的业务人员,实现"人人都是数据分析师"的目标。
2025-12-29 21:35:42
7209
原创 ModelEngine Nexent 智能体从创建到部署全流程深度体验:自动化利器让 AI 开发效率拉满!
ModelEngine Nexent平台体验:智能体开发全流程自动化 本文详细记录了使用ModelEngine Nexent平台开发AI智能体的全过程体验。作者通过Docker部署平台后,从模型配置、知识库上传到智能体创建进行了完整测试。平台亮点包括:支持多种文件格式的知识库自动解析和智能总结;提供一键生成提示词功能;内置调试窗口实现即时修改;支持MCP服务拓展智能体能力。实测显示,平台能快速检索知识库内容并准确回答问题,大幅简化了智能体开发流程。特别是其知识库自动总结和提示词自动生成功能,显著提升了开发效
2025-12-29 21:21:26
6769
原创 [SO101]在Jetson AGX Thor 上训练和部署GROOT N1.5模型
本文介绍了在NVIDIA Jetson AGX Thor开发板上训练与部署GROOT N1.5模型的完整流程。该开发板采用Blackwell架构,具备高AI算力与丰富接口,是具身智能开发的优选平台。系统安装推荐通过SDK Manager工具便捷完成,模型环境适配则采用拉取专用Docker镜像的方式解决。后续需拉取官方代码并切换至N1.5版本,安装依赖库后,处理Lerobot数据集格式,再执行微调命令。模型部署通过启动推理服务端与客户端实现,最终在SO101机械臂部署。
2025-12-29 14:10:54
923
原创 KDL库逆解中的奇异点(Singularity)问题
机器人奇异点问题解析 奇异点是机器人运动中的关键问题,当机械臂处于特定姿态时,雅可比矩阵无法求逆,导致末端失控或关节速度剧增。常见奇异点包括腕部(4/6轴共线)、肘部(完全伸展/折叠)和肩部(末端位于底座中心线)。解决方法包括优化路径规划、增加冗余自由度(如7轴机器人)、采用阻尼最小二乘法(DLS)降低计算误差,或在奇异点附近改用关节运动指令(MoveJ)。奇异点由机械结构决定,需通过算法和运动规划规避。
2025-12-23 11:01:26
449
原创 ROS中的KDL (Kinematics and Dynamics Library)库
KDL(Kinematics and Dynamics Library)是一个开源的C++库,专注于机器人运动学和动力学计算。作为ROS的核心组件之一,它支持运动学正逆解、动力学分析和坐标变换等功能。KDL采用与机器人形态无关的设计,通过关节、链段、链和树等抽象模型描述机器人结构。其优势在于实时性好、通用性强,被广泛应用于轨迹规划和坐标系转换等场景。尽管KDL是工业标准,但在逆运动学求解方面可能存在奇异点和收敛速度问题,有时会被TRAC-IK或IKFast等替代方案取代。
2025-12-23 10:26:51
295
原创 shell脚本中的判断语句
本文介绍了 Shell 脚本中判断语句的关键要点:1) 基础语法结构严格依赖空格;2) 数值比较使用特殊缩写而非符号;3) 字符串比较使用常规运算符;4) 文件检查是 Shell 的特色功能;5) 支持逻辑组合判断。特别强调 Shell 与 Python 在返回码逻辑上的差异(0 表示成功)。文章通过清晰对比和实用示例,帮助读者掌握 Shell 条件判断的核心技巧。
2025-12-21 17:02:03
366
原创 【VLA】如何构建高质量的机器人训练数据集?
摘要: LeRobot社区针对机器人策略训练的数据集质量提出优化方案,总结了四大常见问题:模糊的任务标注、不规范的特征命名、数据不完整及维度不一致。为提升数据集质量,建议遵循黄金标准:确保多视角高清视频、规范命名(如images.top)、精准任务描述(25-50字符)及统一元数据协议(30 FPS)。同时提供录制核查清单,帮助用户规范采集流程,增强模型泛化能力。详情可访问GitHub仓库。
2025-12-21 16:16:17
553
原创 【Bug 记录】ValueError: mutable default <class ‘list‘> for field addrs is not allowed: use default_facto
摘要:Python的dataclass禁止直接为类属性设置可变默认值(如list/dict),以防止多个实例共享同一可变对象导致数据意外修改。当在CoinTrans类中为addrs设置默认列表时抛出ValueError,提示应使用default_factory。解决方案是通过field(default_factory=工厂函数)动态生成独立列表,确保每个实例拥有独立副本。修复后代码使用gen_list()工厂函数,避免了数据串改风险。
2025-12-14 20:29:14
323
原创 python多进程multiprocessing——spawn启动方式解析
spawn这段代码是为了确保多进程程序的稳定性和跨平台兼容性,特别是在涉及 GPU 计算或复杂多线程环境时,通过牺牲一点点启动速度(使用spawn),换取更安全、干净的进程运行环境。
2025-12-02 17:37:13
485
原创 python多进程和多线程问题
Python多线程并非"假线程",而是受GIL限制的并发执行。多进程(multiprocessing)是真正的并行,每个进程独立运行;多线程(threading)是操作系统原生线程,但因GIL导致同一时间只能执行一个线程。多线程适用于I/O密集型任务(如网络请求),在等待时会释放GIL;而协程(asyncio)则是更轻量的用户态并发。多进程适合CPU密集型计算,多线程适合I/O等待场景,需根据任务特性选择合适的并发方式。
2025-12-02 17:15:29
566
原创 openGauss在AI、RAG与向量数据库场景下的技术演进与生态实践
openGauss作为华为开源的企业级数据库,通过AI技术重构数据库内核,实现智能参数调优、自适应索引推荐等功能,大幅提升性能。其内置AI算子和向量计算能力支持RAG技术,满足非结构化数据处理需求。社区生态活跃,拥有850+企业成员和7600+贡献者,商业发行版已应用于金融、电信等行业。典型案例包括钉钉AI一体机和四川气象数据平台,分别实现智能办公和高效气象数据处理。openGauss提供多样化安装方案,展现出色的企业级数据库能力。
2025-11-28 11:52:26
5722
原创 具身智能的“数据破局”:InternData-A1 如何证明合成数据可媲美真实数据?
摘要: 上海人工智能实验室与北京大学联合提出的 InternData-A1 是目前规模最大、保真度最高的机器人操作合成数据集,包含63万条轨迹(7433小时),覆盖4种机器人构型和70个复杂任务。通过自动化流水线生成,其成本低至每条轨迹0.003美元。实验证明,仅用该合成数据预训练的模型性能媲美基于真实数据训练的SOTA模型(如π₀),尤其在灵巧任务中表现突出。研究还量化了仿真与真实数据的“汇率”(1:1至8:1),表明高质量合成数据可显著降低真实数据依赖。这一成果为具身智能研究提供了开源高效的数据解决方案
2025-11-28 10:15:48
856
原创 把数据库逼成“多面手”——我亲测 openGauss 的 AI、RAG 与向量老本行
本文分享了程序员在构建LLM+私有知识库时遇到的向量数据库选型难题,以及最终选择openGauss的实践过程。作者先后尝试了PgVector、Elastic+KNN和Milvus等方案,均因性能、成本或运维复杂度问题而放弃。openGauss凭借原生数组向量支持、高效索引和简洁部署脱颖而出,仅用Docker镜像10分钟即可完成环境搭建,200万条向量导入仅需4分钟,查询响应时间低至18ms。文章还展示了如何通过Python代码实现RAG全流程,将原本需要三个容器的架构简化为单一openGauss数据库,大幅
2025-11-27 16:40:49
6928
原创 openGauss 在 AI、RAG 与向量数据库时代的技术破局与生态深耕
本文评测了openGauss 7.0数据库的AI与向量特性。技术方面,DataVec插件提供向量存储和检索功能,支持多种距离计算方式;AI4DB实现智能运维,DB4AI内置机器学习算法。生态建设上,社区规模快速扩张,兼容MySQL协议并支持多种硬件。实测通过Docker安装后,使用Python实现RAG系统验证其向量检索性能。结果显示openGauss在AI融合与向量处理方面表现突出,适合RAG等智能应用场景。
2025-11-27 16:28:45
5769
原创 RoboCOIN:面向集成化操作的开放式双臂机器人数据集
RoboCOIN是一个开创性的双臂机器人操作数据集和框架,由北京智源人工智能研究院联合多所高校和企业开发。该数据集包含超过18万条演示数据,覆盖421种任务和16个不同场景,采集自15种异构机器人平台。核心创新包括层级化能力金字塔标注系统(轨迹级、片段级、帧级)和CoRobot数据处理框架,其中RTML标记语言可自动检测数据质量。实验表明,使用RoboCOIN数据训练的模型在复杂任务上的成功率显著提升。这一开源项目为跨具身机器人学习建立了新基准,推动双臂操作从单一技能向复杂协同进化。
2025-11-26 10:29:16
1095
原创 【ROS2】技术笔记:ROS 2 构建工具 `colcon build` 详解
colcon build是ROS 2的核心构建工具,用于自动化构建和安装软件包。它通过解析package.xml确定依赖顺序,调用底层构建系统(如CMake)完成编译。常用参数包括:--symlink-install(快速迭代Python/Launch文件)、--packages-select(构建指定包)、--cmake-args(配置构建类型)。典型用法组合分为开发模式(Debug+符号链接)和发布模式(Release优化)。输出目录包括install/(最终文件)、build/(中间文件)和log/(
2025-11-24 11:21:59
495
原创 SAM3 深度解读与工程实践:从原理到打造 Interactive Vision Studio 工作台
Meta发布的Segment Anything Model 3(SAM3)在图像分割和视频跟踪领域取得重大突破,实现了语义与视觉的深度融合。SAM3通过引入开放词汇概念理解能力,构建统一架构共享视觉编码器,并优化多模态提示和数据引擎,显著提升了分割精度和效率。作者基于Gradio开发了交互式视觉工作台SAM3 Interactive Vision Studio,支持图像分割和视频跟踪功能,并开源了项目代码。用户可通过简单步骤在本地部署该系统,直观体验SAM3的强大性能。这一进展标志着视觉大模型向概念理解迈出
2025-11-23 11:24:27
1532
原创 Ubuntu 22.04(Jammy Jellyfish)升级内核方案
摘要:Ubuntu 22.04用户可通过两种方式升级内核:1)官方推荐的HWE内核(稳定、长期支持),执行sudo apt install linux-generic-hwe-22.04即可;2)手动安装主线内核(获取最新特性但无官方支持)。升级前需用uname -r确认当前版本,建议生产环境优先选择HWE内核,测试环境可尝试主线内核。升级后需重启系统,出现问题可通过GRUB回滚旧内核。注意备份数据并检查硬件兼容性,服务器等关键环境应谨慎操作。(148字)
2025-11-17 22:47:28
1064
1
原创 GitHub 代码提交指南
摘要:本文详细介绍了Git基本使用流程,包括安装配置、仓库创建、文件管理、提交推送和分支操作。重点讲解了如何通过.gitignore文件排除不需要提交的文件,提供了常见忽略项示例,并解释了已跟踪文件的处理方法。此外,还涵盖了工作区状态检查、暂存提交、远程推送等核心操作,以及分支管理和常见问题解决方案,为Git新手提供了完整的版本控制入门指引。
2025-11-17 18:21:20
606
原创 Masquerade 总结笔记:解锁野外人类视频的机器人政策学习潜力
摘要: Masquerade框架通过显式缩小人类与机器人的视觉差距,利用野外人类视频提升机器人策略泛化能力。其核心方法包括:(1) 将人类视频编辑为“机器人化”数据(姿态映射、手臂修复、虚拟机器人叠加);(2) 基于编辑数据预训练视觉编码器;(3) 联合少量真实机器人数据微调策略。实验表明,该方法在分布外场景中平均成功率提升至74%,显著优于基线。尽管依赖第一人称视角数据,但其“视觉对齐+联合训练”范式为利用非第一人称视频提供了潜在方向,如通过多视角重建或强化学习补偿视角差异。这一突破为机器人学习的数据瓶颈
2025-11-17 16:25:30
593
原创 NeurIPS 2025 超越认知的物理挑战:PhyBlock 3D积木基准撬动大模型空间推理极限
研究团队提出PhyBlock基准,系统性评估21种视觉语言模型在3D积木搭建任务中的物理理解和规划能力。该基准包含400个分层搭建场景和2200道物理理解VQA问题,涵盖从简单堆叠到22块积木的复杂结构。实验发现主流模型在简单任务表现尚可,但在复杂空间依赖和高层推理上性能急剧下降,尤其存在姿态误估和支撑依赖两大核心缺陷。值得注意的是,开源模型显著落后于闭源模型,而思考模式提示对空间任务几乎无效。结果表明当前VLM缺乏真正的物理直觉,精确的三维姿态理解成为制约其3D规划能力的关键瓶颈。这一基准为具身智能研究提
2025-11-17 11:17:45
1308
原创 【BUG解决】error: system does not fully support snapd: cannot mount squashfs image using “squashfs“
摘要:在Ubuntu 22.04(ARM64)安装Chromium时出现snapd挂载squashfs错误。主要原因是内核缺少squashfs/loop模块或SELinux干扰。解决方案包括:1)加载内核模块(squashfs/loop);2)禁用SELinux;3)重试安装。替代方案可使用Flatpak或PPA安装。该问题常见于ARM设备,与Ubuntu默认使用snap打包应用有关。系统需确保内核支持必要模块且安全模块配置正确。
2025-11-14 10:38:22
332
原创 Jetson ORIN NANO SUPER 装机流程
本文详细介绍了使用NVIDIA SDK Manager在Jetson Orin Nano开发套件上烧录系统和安装SDK组件的完整流程。教程包含准备工作、SDK Manager安装、目标设备选择、许可协议接受、系统烧录以及安装验证等关键步骤。特别强调了连接稳定性、网络要求以及时间预估等注意事项,并提供了常见命令用于验证安装结果。该指南适用于Jetson Orin Nano 8GB/16GB版本,需在Ubuntu主机环境下操作,整个安装过程约需1小时以上。
2025-11-13 22:48:17
1244
原创 MotionTrans: 从人类VR数据学习机器人操作的运动级迁移
清华大学与北京大学等机构联合提出MotionTrans框架,通过VR采集人类演示数据,实现机器人运动级操作学习。该研究在15个人类任务和15个机器人任务上进行联合训练,成功将13个人类任务的动作迁移至机器人,其中9个任务在零样本下达到良好成功率。框架创新性地设计了人机数据转换方法和加权多任务训练策略,构建包含3,213条演示的多样化数据集。实验表明,该方法不仅实现零样本动作迁移,还能显著提升少样本微调效果,为利用丰富人类数据解决机器人操作学习问题提供了新思路。
2025-11-12 22:16:23
1452
原创 Docker常见命令
本文提供了一份实用的Docker基础操作指南,涵盖安装、核心概念和常用命令。主要内容包括:Docker引擎的安装方法(支持Linux/macOS/Windows);镜像与容器的核心概念区分;镜像搜索/拉取/删除和容器运行/启停/日志查看等基础操作;网络配置与数据管理技巧;Dockerfile构建自定义镜像的示例;以及清理资源、查看详情等组合命令。文中还解答了权限错误、端口占用等常见问题,帮助开发者快速掌握容器化技术的关键操作。
2025-11-12 17:20:51
687
原创 ROS2 Action 通信详解:从自定义消息到 Server/Client 实现(附 MoveIt! 联动示例)
ROS2 Action 控制与 MoveIt! 示例 摘要:本文介绍了基于 ROS2(Humble/Iron 版本)的 Action 控制方法,包含自定义 Action 实现和 MoveIt! 运动规划集成。第一部分详细展示了从创建功能包到实现 Action Server/Client 的完整流程(包含目标、反馈、结果三要素),通过 Python 脚本实现了任务进度监控和取消功能。第二部分简要说明如何利用 MoveIt! 封装的 Action 接口实现机器人运动规划功能。所有示例均遵循标准 ROS2 命令行
2025-11-11 22:34:33
723
原创 MoveIt! 与 Action 控制的本质区别与协同关系
摘要:MoveIt!与ROS Action控制的关键区别在于定位和功能。Action是通用通信协议,解决长时间任务的异步交互问题(如导航、机械臂控制);而MoveIt!是专注于机器人运动规划的专用框架,负责避障、轨迹生成等核心逻辑。MoveIt!内部封装Action接口(如MoveGroupAction)供外部调用,实际开发中两者协同工作——Action处理任务交互,MoveIt!解决运动规划。常见误区包括混淆两者层级关系或认为它们可相互替代。典型应用场景中,MoveIt!通过Action接收目标、反馈进度
2025-11-11 22:32:35
806
原创 LeRobot v3.0 数据集格式详细分析
LeRobot Dataset v3.0 是 Hugging Face 推出的标准化机器人学习数据格式,提供统一的多模态时序数据访问接口,支持感官运动信号、多摄像头视频,以及丰富的元数据用于索引、搜索和可视化。版本信息: v3.0(包含在 lerobot >= 0.4.0 中)文件组织: v3.0使用文件基础而非episode基础的存储元数据驱动: Episode边界通过元数据而非文件名解析高效访问: 内存映射 + 流式加载 = 低内存占用标准化格式: 统一的schema支持跨数据集训练Hub集成。
2025-10-31 11:09:39
1610
6
原创 在Linux服务器上配置GitHub SSH密钥的完整指南
本教程介绍如何在Ubuntu系统通过SSH密钥安全连接GitHub仓库。首先检查现有SSH密钥,若无则使用Ed25519算法生成新密钥对。将公钥内容复制并添加到GitHub账户的SSH设置中。测试连接成功后,修改Git仓库远程URL或直接使用SSH链接克隆。教程包含常见问题排查方法,如权限设置和连接问题,并建议定期轮换密钥和使用独立密钥增强安全性。完成配置后即可实现免密安全的Git操作。
2025-10-31 09:32:16
528
原创 具身智能落地加速:人形机器人领域的技术趋势与无界智慧团队人才
无界智慧团队正在招聘具身智能领域人才,包括紧急招募的资深机械结构工程师和常规招聘的机器人硬件/VLA岗位。团队由ACM金牌得主、机器人专家和顶尖院校科研人员组成,配备高性能研发设施。机械工程师需5年以上AGV/工业设备设计经验,负责人形机器人结构优化和量产导入;常规岗位面向具备机器人/算法经验的工程师或实习生。团队提供有竞争力的薪酬和成长空间,对标国际顶级组织。投递简历至hr@spatialtemporal.ai,紧急岗位优先处理。
2025-10-29 18:24:02
1018
原创 【VLA半自动化数采】FieldGen: From Teleoperated Pre-Manipulation Trajectories...论文阅读笔记
FieldGen论文提出了一种半自动化数据生成框架,通过分解机器人操作任务为预操作和精细操作两个阶段,解决了真实世界数据收集的效率与多样性难题。其核心创新在于构建锥形场和球形场来自动生成多样化轨迹,同时保留人类专家对关键操作步骤的监督。实验表明,该方法在相同时间内收集的数据质量显著优于传统遥操作,数据收集效率提升2.47倍,在多个任务上达到100%成功率。FieldGen为机器人学习提供了高效、高质量且多样化的真实世界数据生成方案,平衡了自动化效率与人工监督的精准性。
2025-10-28 19:47:13
962
1
原创 机器人控制的基石:ROS 2 Controller Spawner 深度解析、应用对比与防范陷阱
在 ROS 2 机器人控制系统中,框架扮演着核心角色。而spawner(控制器启动器)则是实现控制器自动化加载和启动的关键工具。本文将详细解析spawner的工作原理,对比手动服务调用与自动化启动的优劣,并基于实际的 OpenArm 双臂机器人调试经验,总结出在使用spawner启动资源密集型控制器时的最佳工程实践,以确保系统在性能受限的硬件上也能稳定运行。特性原始官方 Spawner (风险)修复后的 Spawner (最佳实践)启动方式单一 Spawner,多个参数独立 Spawner,各自参数。
2025-10-27 20:40:49
1177
原创 Socket和Websocket编程的区别
文章摘要: WebSocket与Socket的关键区别在于数据传输方式。Socket基于TCP/UDP协议实现底层网络通信,需手动建立连接;WebSocket则基于HTTP协议升级实现双向实时通信。主要差异包括:协议层(传输层vs应用层)、连接方式(短连接vs长连接)、通信模式(单向vs双向)和传输效率(高效但需额外开销)。代码示例展示了Python实现的Socket服务器/客户端(使用socket模块)和WebSocket服务器/客户端(使用websockets库),前者需处理线程管理,后者通过异步编程简
2025-10-27 20:04:42
922
原创 PIL与OpenCV图像读取的颜色格式陷阱:RGB vs BGR
为什么图像颜色会反转?PIL与OpenCV的RGB/BGR格式差异解析 当使用PIL和OpenCV处理图像时,开发者常遇到红色变蓝色的问题。核心原因是: PIL/Pillow使用RGB格式(红绿蓝通道顺序) OpenCV采用BGR格式(蓝绿红通道顺序) 直接混用会导致颜色通道错位,红蓝互换 解决方法: PIL转OpenCV时:cv2.cvtColor(img_rgb, cv2.COLOR_RGB2BGR) OpenCV转PIL时:cv2.cvtColor(img_bgr, cv2.COLOR_BGR2RGB
2025-10-15 16:44:07
841
该包包含Mysql安装包以及详细文档教程,还有Navicat8的安装包以及详细文档安装教程
2023-01-09
python爬虫课设,爬取51job网站岗位基本信息,大学开展python数据获取与预处理的小伙伴们,可以直接拿来用
2023-01-09
B站韩顺平学习资料总结,韩老师所有的课堂笔记与代码 看
2022-07-08
红蜘蛛教室控屏软件,上课进行学习机演示可用
2022-12-28
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅