1. 锁机制概述 1.1 概念与作用 在程序使用多线程处理事务时,难免会遇到访问共享资源的情况,而为了共享资源能够被合理地分配与使用,就引入了锁机制来保证线程访问共享资源的互斥性与同步性,最终目的就是为了保证多线程不会因竞争共享资源而导致死锁等问题,合理地使用锁机制能保证程序的有效运行。 互斥性:在同一时刻,不能有多个线程访问同一共享资源,即让共享…
最近也需要使用Python进行数据处理,但Python一直学了未用,很多知识也都迷迷糊糊的了,所以现在复习回顾一下。(之后抽空也回顾一下Python基础语法) 数据分析一般流程:数据读写-->数据的处理计算-->数据的分析建模-->数据可视化 用Python进行数据分析工具有三: NumPy:多维数组/矩阵基础包,是很多其他包(如…
闲来无事,总结一下这四种QJson类型,包括QJsonObject、QJsonArray、QJsonValue、QJsonDocument,重点是记录一下这四种类型之间及与QString的相互转换,免得每次用到都要再搜一遍。 1. QJson类型介绍 Qt 提供了用于处理 JSON 数据的四种主要类型: QJsonObject:表示一个 JSON …
信号与槽是我个人认为QT中最牛的机制之一,最近没有其他的内容可写,今天就来细细总结一下这个信号与槽机制。 1. 信号与槽机制概述 信号与槽机制可以理解为QT中的一种通信手段,在运行相关代码前,分别声明信号和槽,再利用connect()方法将信号和对应的槽连接起来,之后再需要的地方使用emit触发信号,那么就可以让槽响应。 其中,槽可以是特定的槽函数…
1. 概述 1.1 正则表达式概述 正则表达式(Regular Expressions,简称 regex)是用于匹配文本模式的一种特殊字符序列,其可以用一系列字符来表示出不同文本的对应模式。正则表达式的应用范围十分广泛,包括验证文本格式、判断字符种类、解析文本信息、转换目标文本、遍历搜索文本、符号化文本等。 一般在文件搜索、浏览器搜索时都可以使用正…
C++ Lambda表达式
【转载翻译】Open3D和PCL的一些比较
QT中多线程写法

1. Lambda表达式的简述 Lambda表达式是C++11引入的一种函数对象,其使用更为简洁,能更方便的嵌入需要函数的地方。 Lambda表达式也被称为匿名函数,其不需要特定的函数名称,甚至不用指定参数和返回类型。 合理使用Lambda表达式能有效提高代码的可读性,减少代码的冗余量,使代码更为简洁、高效、安全。 2. Lambda表达式的语法格…
本人在逛Github时,发现一个解答Open3D和PCL对比的小文章,还挺有参考价值的 原文:https://github.com/LaplaceKorea/investigate_open3d_vs_pcl/blob/main/README.rst#whats-the-support-for-gpus-look-like-in-open3d-an…
1. QThread及moveToThread() 使用情况: 多使用于需要将有着复杂逻辑或需要一直占用并运行的类放入子线程中执行的情况,moveToThread是将整个类的对象移入子线程。 优缺点: 优点:更符合QT的逻辑设计;灵活使用管理线程;将类的任务逻辑与线程逻辑区分开。 缺点:不易于单独对指定函数单独放入子线程,也就不易于将一个类中多个函…
三维点云投影二维图像的原理及实现
1. 概述 1.1 原理概述 三维点云模型是由深度相机采集深度信息和RGB信息进行生成的,深度相机能直接获取到深度图和二维RGB图像,也就是说利用相机原本的关系就可以把深度信息投影回二维图像,即把点云中每个点投影到二维的正确位置,再把原本每个点的RGB颜色信息保留,涂抹到二维的对应位置,就实现了三维点云模型向二维图像的投影。 首先获取相机的相关参数…
转载自:Point Cloud Processing with Open3D and Python 本文由 Carlos Melo 发布于2024年2月12日 本文很适合初学者对三维处理、点云处理以及Open3D库进行初步了解 另外,本文是基于Python代码入门的,而C++也是类似的 近年来,在AR和空间计算技术的大力推动下,3D处理领域吸引了越…