- 博客(41)
- 收藏
- 关注
原创 logging.exception或traceback跟踪Python异常的堆栈信息
python显示错误消息和堆栈跟踪,使用logging.exception或者traceback进行跟踪。
2024-12-04 14:57:08
391
1
原创 Modbus TCP报错:Response length is only 0 bytes
与Modbus TCP 服务端建立连接后没有断开,继续作为长连接使用,客户端请求的间隔超过了服务端设置的超时时间,导致报错。
2024-10-21 16:19:18
504
1
原创 Docker设置日志滚动
Docker 容器中的进程会将打印到控制台(console)的日志保存到容器的目录下,默认的 Docker 配置不带有日志的回滚。会在自己的容器目录下往同一个日志文件中不停写入,最后会导致。修改 docker.service 的配置,改完后 docker run 的新容器都可以应用该配置,但旧的 container 不生效。按以上方法操作后 Docker 容器将会按照配置的的日志回滚规则管理日志文件,确保日志文件不会无限增长,也能够方便地查看日志文件。
2024-10-21 14:27:05
1409
原创 VNC 远程控制工具安装
VNC(Virtual Network Console)是虚拟网络控制台的缩写。它 是一款优秀的远程控制工具软件, 主要由两部分组成:一部分是客户端的应用程序(vncviewer),另外一部分是服务器端的应用程序vncserver。
2024-02-23 15:16:30
739
原创 【Python源码保护】04 - pyinstaller
用户可以在不安装Python解释器或任何模块的情况下运行打包的应用程序。PyInstaller支持Python 3.8及更新版本,并正确地捆绑了许多主要的Python包,如numpy、matplotlib、PyQt、wxPython等。然而,它不是一个交叉编译器;制作一个Windows应用程序,你可以在Windows上运行PyInstaller,制作一个Linux应用程序,需要在Linux上运行它。pyinstaller官方文档: https://pyinstaller.org/en/v6.3.0/
2023-12-27 14:01:46
684
原创 【Python源码保护】03 - pyd或so动态库
Cython是一个编程语言,它通过类似Python的语法来编写C扩展并可以被Python调用。将 .py 编译为 .c 文件,再将 .c 文件编译为 .so(Unix) 或 .pyd(Windows),这样得到的文件更难反编译,同时带来了性能提升,缺点是兼容性稍差,对于不同版本的操作系统,可能需要重新编译, 虽然支持大多数 Python 代码,但如果一旦发现部分代码不支持,完善成本较高。就是生成的动态库, 需要注意的是,使用这种方式加密后的文件使用时。动态链接库,在运行时链接到调用程序。
2023-12-27 13:59:58
939
原创 【机器视觉技术栈】04 - 光源
机器视觉应用的照明的最重要的任务就是使需要被观察的特征与需要被忽略的图像特征之间产生最大的对比度,从而易于特征的区分。应用于:系列光源最适宜用于反射度极高的物体,如金属、玻璃、胶片、晶片等表面的划伤检测,芯片和硅晶片的破损检测,Mark点定位,包装条码识别。应用案例:CB基板检测,IC元件检测,焊锡检查,Mark点定位,显微镜照明,包装条码照明,球形物体照明等。好的光源需要能够使你需要寻找的特征非常明显,除了是摄像头能够拍摄到部件外,好的光源应该能够产生最大的对比度、亮度足够且对部件的位置变化不敏感。
2023-12-07 21:40:08
389
原创 【Python源码保护】02 - pyc
Python虽然是一门解释型语言,但Python程序执行时,也需要将源码进行编译生成字节码,然后由Python虚拟机进行执行。
2023-12-07 21:31:36
208
原创 Linux 环境下的性能测试——top与stress
对于Linux 环境,top命令是使用频繁且信息较全的命令, 它对于所有正在运行的进行和系统负荷提供实时更新的概览信息。stress是个简单且全面的性能测试工具。通过它可以模拟各种高负载情况。通过top与stress这两个命令的结合使用,基本可以达到压力测试的目的。
2023-12-05 21:08:29
698
1
原创 【机器视觉技术栈】02 - 工业相机
实践中还有中实践采用了软硬触发结合的方式,一个相机采用软触发的方式,将其信号线作为触发源来硬触发其他相机及光源频闪。**曝光时间:**0.1ms(曝光时间越长,图像越亮,但产线是运动的话,过曝会导致图像模糊)**像素数:**200万 约等于 1626*1236 = 2009736。**像素分辨率:**24.5mm/1626px = 0.015mm/px。**相机:**2D(面阵相机、线阵相机)、3D。:目标运动时,会出现图像位置不一致的情况。**视场大小:**24.5 mm。**镜头:**远心镜头。
2023-12-01 22:43:54
370
原创 【Python源码保护】01 - pyobfuscate代码混淆
代码混淆是指将代码进行等操作,使得代码难以被阅读和理解,从而达到保护代码的目的。代码混淆可以有效地保护源码。
2023-12-01 22:41:15
3573
原创 Python如何优雅的写包——Packages
Packages 可以理解为一组模块的包,并用Package.Module的方式来构建命名空间。文件夹中必须有__init__.py这个文件,才能使 Python 将包含该文件的目录视为包(Package)。
2023-11-30 21:14:20
1152
原创 Miniconda 常用命令
Miniconda 是一个 Anaconda 的轻量级替代,默认只包含了 python 和 conda,但是可以通过 pip 和 conda 来安装所需要的包。
2023-11-29 22:52:52
468
原创 EISeg 交互式分割标注软件安装
EISeg(Efficient Interactive Segmentation)是以RITM及EdgeFlow算法为基础,基于飞桨开发的一个高效智能的交互式分割标注软件。涵盖了通用、人像、遥感、医疗、工业质检等不同方向的高质量交互式分割模型,方便开发者快速实现语义及实例标签的标注,降低标注成本。另外,将EISeg获取到的标注应用到PaddleSeg提供的其他分割模型进行训练,便可得到定制化场景的高精度模型,打通分割任务从数据标注到模型训练及预测的全流程。
2023-11-29 22:31:13
1124
原创 Nginx RTMP流媒体服务器搭建
Nginx-rtmp搭建方式实时消息传送协议是 Adobe Systems公司为Flash播放器和服务器之间音频、视频和数据传输开发的开放协议。
2023-11-08 11:13:57
608
原创 ModbusTCP报错 flush_socket: maximum number of iterations reached
PLC 在设置时会有以太网连接数的设置,当发起的连接数超过PLC设置的数量时会报该错。1、客户端连接时,使用长连接时需要考虑连接数的上限,或者采用短连接的方式。2、增加PLC的连接数设置,以下为三菱FX5U PLC增加连接数的方式。
2023-08-22 09:44:47
1055
1
原创 route基础及Linux、Windows环境下的配置
路由是由一项或者多项路由表组成的,每个IP报文被发送前,系统都会查找主机路由表,决定将这个报文从哪个网卡,发送到哪个下一跳。每条路由表项主要由目标IP(主机或者网络),子网掩码,接口,网关(下一跳IP),度量(metric)这几项组成。
2023-07-04 17:18:06
1076
原创 Flask 中使用 WebSocket 通信
在 Flask 中使用 flask-sockets 实现 WebSocket 通信。简要介绍了入门示例、python3 实现 websocket 客户端示例、使用 Flask blueprints 示例,http轮询如何替换为websocket。
2022-11-30 11:34:06
4972
1
原创 Python 装饰器详解
装饰器本质上是一个 Python 函数,它可以让其他函数在不需要做任何代码变动的前提下增加额外功能。本文介绍了用装饰器的场景,装饰器的定义、装饰器的用法、多个装饰器的使用、带参数装饰器、类装饰器。
2022-11-25 23:40:39
1778
1
原创 RPC在Python中的使用及原理浅析
RPC是远程过程调用(Remote Procedure Call)的缩写形式。RPC采用客户机/服务器模式。请求程序就是一个客户机,而服务提供程序就是一个服务器。首先,调用进程发送一个有进程参数的调用信息到服务进程,然后等待应答信息。在服务器端,进程保持睡眠状态直到调用信息的到达为止。当一个调用信息到达,服务器获得进程参数,计算结果,发送答复信息,然后等待下一个调用信息,最后,客户端调用过程接收答复信息,获得进程结果,然后调用执行继续进行。
2022-10-29 14:47:07
5252
原创 ProtoBuf简介及在Python3中的示例
序列化与反序列化基础;ProtoBuf优缺点及适用场景;Python3使用ProtoBuf示例。
2022-10-21 11:37:22
3270
原创 Linux下源码安装python3、配置pip国内源、生成requirements.txt总结
python版本升级安装3.7、pip国内源配置、pip生成requirements.txt
2022-07-06 19:38:30
2460
原创 IoU(交并比)的理解及python实现
交并比(Intersection over Union, IoU)是目标检测、语义分割、追踪等任务最常用的评估指标。
2022-06-18 15:44:43
9388
6
原创 结构化数据、半结构化数据、非结构化数据的对比
结构化数据是指可以使用关系型数据库表示和存储,表现为二维形式的数据。非结构化数据是数据结构不规则或不完整,没有预定义的数据模型,不方便用数据库二维逻辑表来表现的数据。半结构化数据是介于完全结构化数据(如关系型数据库)和完全无结构化数据(如音频、视频)之间的数据,它并不符合关系型数据库或其他数据表的形式关联起来的数据模型结构,但包含相关标记,用来分隔语义元素以及对记录和字段进行分层。......
2022-06-11 10:51:39
3464
原创 python线程池ThreadPoolExecutor的用法
concurrent.futures模块提供的线程池ThreadPoolExecutor基本用法,获取线程池中任务的运行结果方法。
2022-05-31 19:58:04
5385
2
原创 Kafka高可用 — KRaft集群搭建
Kafka Raft 是一种共识协议,它的引入是为了消除 Kafka 对 ZooKeeper 的元数据管理的依赖,被社区称之为 Kafka Raft metadata mode,简称 KRaft 模式。本文介绍了KRaft模式及三节点的 KRaft 集群搭建。
2022-03-18 18:51:30
7642
1
原创 RPM打包软件流程
RPM(Redhat Package Manager)是用于Redhat、CentOS、Fedora等Linux分发版(distribution)常见的软件包管理器。国产操作系统的中标麒麟同样使用RPM包管理工具。本文以 hello world 程序为例,介绍RPM软件打包流程,最后总结常用的RPM包安装、查询、卸载等命令。
2020-10-15 17:29:03
1856
1
原创 deb 打包、安装、卸载
deb包介绍包含的内容及其含义control preinst postinst prerm postrm打包、安装、卸载测试其他常用dpkg命令:解包 等等参考文献[1] Ubuntu中deb包详解及打包教程
2020-07-03 14:57:52
5611
原创 Redis哨兵模式配置及go客户端自动切换主节点
哨兵模式介绍哨兵(Sentinel)模式是Redis高可用的其中一种实现模式,其包含一个主节点(master)、多个从节点(replication,旧称slave),以及多个哨兵节点(sentinel)。每个sentinel节点会对数据节点和其余sentinel节点进行监控,当它发现节点不可达时,会对节点做下线标识。如果被标识的是“主节点”,它还会和其他的sentinel节点进行“协商”,当大多数sentinel节点都认为主节点不可达时,它们会选举一个Sentinel节点来完成自动故障转移的工作,同时会将
2020-06-05 14:08:19
2437
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人