自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(57)
  • 收藏
  • 关注

原创 在 Ubuntu 中配置开机自启动脚本并激活 Anaconda 环境

通过以上步骤,你可以在 Ubuntu 的开机自启动脚本中正确激活并使用 Anaconda 环境。如果遇到权限或路径问题,请仔细检查日志并确保所有路径均为绝对路径。希望本文能帮助你轻松实现这一需求!

2025-03-24 10:41:37 764

原创 一键批量处理图片:自动缩放+智能备份双方案

通过这两种方案,您可以轻松应对各类图片批量处理需求。建议根据具体场景选择方案,欢迎在评论区交流使用心得!在日常工作中,我们经常需要对大量图片进行尺寸调整。

2025-03-24 10:23:32 389

原创 如何快速查看 Docker 容器的最新日志?运维必备技巧

如果容器配置了第三方日志驱动(如syslogfluentd),需通过对应工具查看日志。场景推荐命令快速查看最新50行日志docker logs --tail 50 <容器名>实时监控日志更新docker logs -f <容器名>导出最近1小时日志到文件docker logs --since 1h <容器名> > logs.txt带时间戳的日志分析docker logs -t <容器名>掌握这些技巧后,你可以像“时间旅行者”一样自由穿梭在容器日志中,快速定位问题根源。

2025-03-24 10:01:55 642

原创 C++ 时间操作:获取有史以来的天数与文件计数器

获取从Unix纪元时间到当前时间的天数。实现一个基于文件的时间计数器。计算任意两个时间点之间的天数。这些功能在实际开发中非常有用,例如日志记录、定时任务、数据统计等场景。希望本文能帮助你更好地理解和使用C++的时间操作功能!

2025-03-22 08:31:44 348

原创 正则表达式从入门到精通:开发者必备的文本处理利器

正则表达式(Regular Expression)诞生于1956年,却在互联网时代大放异彩。这个由普通字符和特殊符号组成的模式串,能像精准的筛子一样从海量文本中筛选出你需要的信息。无论是验证用户输入、日志分析,还是数据清洗,正则表达式都是开发者不可或缺的文本处理利器。掌握正则表达式,就像获得了一把打开文本处理之门的万能钥匙。通过持续实践和模式积累,您将能游刃有余地应对各种复杂的文本处理需求。记住:优秀的正则表达式,是精确性与可读性的完美平衡。

2025-03-19 10:00:00 876

原创 如何通过Python自动判断PDF文件是图片还是富文本?完整代码解析与实战

本文通过文本统计的方法实现了PDF类型快速判别,代码简单高效且易于上手。自动化流程集成:搭配处理文件夹批量分类。可视化输出:结合GUI框架(如Tkinter)生成结果报表。云部署:将代码封装为API,用于在线文档分析服务。检查PDF是否加密或损坏。调整阈值或结合图片数量检测。对扫描件使用OCR工具提取文本(如希望这篇指南能帮助你提升PDF处理效率!如需深入探讨PDF处理技巧,欢迎留言或访问PyMuPDF官方文档。

2025-03-18 09:00:35 563

原创 使用OpenCV获取视频帧率(FPS)的全面指南

视频的**帧率(Frames Per Second, FPS)**是衡量视频流畅度的核心参数。它决定了每秒显示的图像数量,直接影响视频的播放速度和时间计算。在视频分析、监控、流媒体处理等场景中,准确获取FPS至关重要。本文将详细介绍如何通过**OpenCV**库高效获取视频帧率,并结合代码示例和实用技巧,帮助开发者理解其原理与应用。

2025-03-17 10:00:00 2098

原创 vLLM部署类似DeepSeek R1的推理模型并支持推理字段返回

要在本地部署类似DeepSeek R1的支持推理功能的模型,需通过vLLM的命令启动推理服务,这里采用了QwQ:32B模型示例。以下是用户提供的具体命令及参数解析:参数详解以下解释关键参数在部署中的作用:安装vLLM首先安装vLLM框架:准备模型文件将模型文件解压到指定路径(如),确保包含以下内容:启动服务执行上述命令。首次启动可能需要较长加载时间,成功后输出以下提示:验证服务通过curl测试API接口:应返回模型列表,包含的详细信息。若显存不足,尝试降低值或:调整到

2025-03-16 10:00:00 2466

原创 C++的set和unordered_set的基本操作及其异同

/ 使用自定义比较函数(lambda)创建 set,元素按降序排列:// 输出结果为 10, 5, 33. 插入元素9. 其他注意事项时间复杂度:插入、查找、删除均为 O(log N),适用于需要自动排序和唯一性的场景。线程安全性:非线程安全,多线程需自行加锁。与multiset区别multiset允许重复元素,其余特性与set相似。迭代器失效:当元素被删除或容器被修改时,指向该元素的迭代器可能失效。完整示例// 插入元素// 现有序列:1,3,5,6,7,9。

2025-03-15 10:00:00 1118

原创 最大公约数与最小公倍数:数学原理与代码实现

最大公约数(GCD, Greatest Common Divisor)指两个或多个整数共有约数中最大的一个。例1:求12和18的最大公约数12的因数:1, 2, 3, 4, 6, 1218的因数:1, 2, 3, 6, 9, 18共有因数为:1, 2, 3, 6 → 最大公约数为6核心性质gcd⁡abgcd⁡bab(当b≠0\gcd(a, b) = \gcd(b, a \% b) \quad \text{(当 } b \neq 0 \text{)}gcdab。

2025-03-14 10:49:34 791

原创 大模型多模态微调的两种优化方法**DPO**(Direct Preference Optimization)和**KPO**(Knowledge Preference Optimization)

特性DPOKPO核心目标对齐人类偏好对齐知识正确性数据依赖人类偏好数据(排序/评分)知识标注数据(事实/专家校验)优化重点输出符合主观偏好输出符合客观知识适用场景对话生成、创意内容问答、医疗、法律等专业领域。

2025-03-13 10:00:00 342

原创 使用Shotcut为视频添加马赛克效果

通过以上步骤,您可以在 Shotcut 中成功为视频添加马赛克效果。若过程中遇到问题,可参考。中添加马赛克效果可以通过视频特效和遮罩工具实现。

2025-03-12 14:15:00 978

原创 写程序求对数函数 $\log_p(N)$ 的下界

在数学和计算机科学中,求对数函数logp​N的下界通常需要根据具体的上下文来确定。通常情况下,对数函数的下界是指在给定的基数p下,对数函数的最小可能值。假设N是一个正整数,p是一个大于 1 的正整数,我们来探讨几种求logp​N下界的方法。

2025-03-12 10:00:00 752

原创 部署满血版DeepSeekR1遇到的上下文长度超限问题

机器配置不低,应该是够用的。我之前只部署过int4的DeepSeek model,没有遇到这种问题。纯满血版目前手头没有显存支持,人又不在现场,我让他先发来部署命令瞅瞅吧。按理说OpenWebUI的默认上下文才区区2k,甚至短的离奇,怎么会超过呢?下班刚到家,其他部门的同事发来信息求助,部署满血版DeepSeek遇到报错,疑似上下文不够,但是上下文已经给到了32768,怎么回事呢?其他还有几个我用不到的参数在里面,我直接建议他把那几个参数砍掉试一下先。修改启动参数后,目测是解决了问题。,应该是一样的问题。

2025-03-12 08:09:55 1241

原创 C++从大到小输出stl::map键值对

你可以在创建std::map时指定一个自定义的比较函数,使得std::map根据键的降序进行排序。// 自定义比较函数// 按照键的降序遍历return 0;

2025-03-11 15:04:17 230

原创 通过 ElasticSearch的Python API和`curl` 命令获取Elasticsearch 所有索引名称

通过 Python 客户端,只需几行代码即可快速获取 Elasticsearch 的所有索引名称,灵活应对开发与运维需求。根据实际场景选择合适的方法,并结合权限管理和安全配置,你可以更安全、高效地操作 Elasticsearch 系统。如需深入探讨其他 Elasticsearch 技巧,欢迎在评论区留言。

2025-03-11 11:10:17 1338

原创 从SVN仓库中检出(checkout)指定后缀名的文件例如docx或txt | svn 过滤后缀名牵出遇到“Skipped”问题 | 文件太多svn报错`Argument too long‘

前任撒手离去,留下一个巨大的SVN仓库,本地没人由硬盘空间牵出完整的仓库在本地查找文档,怎么办?直观地方法就是通过过滤后缀名直接牵出文档文件。怎么做?要从SVN仓库中检出(checkout)指定后缀名的文件,可以使用SVN的命令行工具结合一些脚本技巧来实现。

2025-03-10 10:55:55 496

原创 Windows、macOS和Linux系统的统计文件夹下的文件数量的方法

在Windows、macOS和Linux系统下统计文件夹下的文件数量的几种方法。

2025-03-08 14:24:04 839

原创 从一个问题回忆C++中std::map的初始化过程

当使用operator[]访问一个不存在的键时,map会插入一个新的元素,键是用户指定的,而值则会进行值初始化。所以,如果用户执行m[“key”] += 1.0f,如果“key”不存在,operator[]会插入一个键为“key”的元素,其对应的float值被初始化为0.0f。根据C++标准,当使用operator[]访问map时,如果键不存在,会插入一个value_type,其中值部分是值初始化的。对于内置类型的float,值初始化意味着零初始化,所以没错,初始值确实是0.0f。

2025-03-08 14:20:11 399

原创 使用OpenCV来获取视频的帧率

在OpenCV中,获取视频的帧率(FPS, Frames Per Second)是一个常见的操作,尤其是在处理视频流或进行视频分析时。帧率表示每秒钟视频中的帧数,这个参数对于视频播放速度和时间计算非常重要。:首先,确保你已经安装了OpenCV,并在代码中导入它。:使用OpenCV的类来打开视频文件。:通过对象的get方法,使用属性来获取视频的帧率。:将获取到的帧率打印出来,以便查看。:处理完视频后,记得释放对象以释放资源。

2025-03-08 14:12:53 734

原创 3个插件让CodeForces刷题体验直逼LeetCode

三个插件分别是VScode的 Competitive Programming ,Chrome浏览器的competitive companion和CPH submit插件。该插件配合浏览器的competitive companion插件,实现一键自动拉取题目号码、测试样例数据,并支持一键编译测试代码。competitive companion插件官方仓库地址。3个插件让CodeForces刷题体验直逼LeetCode。再配合chrome的cph submit插件实现一键提交。

2025-03-08 13:25:01 342

原创 RAG开发零帧起手:qwen+llamaindex最简演示,实战Qwen与LlamaIndex整合

1、docker创建开发用的容器2、使用hf-mirror离线下载model3、容器内安装vim、解决权限问题、上传文件等4、配置容器中文环境5、安装llamaindex6、运行、调试 、魔改qwen+llamaindex 的官方demo

2025-03-08 11:42:41 769 1

原创 Docker配置宿主机目录和网络映射

host网络模式在某些场景下非常有用,特别是当你需要高性能的网络连接或简化端口管理时。然而,它也有其局限性,特别是在处理端口冲突和网络隔离方面。根据你的具体需求选择合适的网络模式。

2024-11-03 11:32:47 1863 1

原创 Python正则表达式匹配汉字、英文、数字、常用符号等

要创建一个正则表达式,用于匹配汉字(包括但不限于常用的汉字和扩展汉字)、数字、英文字符、换行符(\n\r)、制表符(\t。

2024-11-03 10:57:15 1323

原创 范畴论(Category Theory)的基本介绍

一个范畴对象(Objects)范畴中的对象可以是任何数学结构。例如,在集合的范畴中,每个对象是一个集合;在群的范畴中,每个对象是一个群。态射(Morphisms)也称为箭头或映射,态射是对象之间的抽象化关系。在集合的范畴中,态射是函数;在群的范畴中,态射是群同态。组合律(Composition)如果存在从对象A(A)A到对象B(B)B的态射f(f)f和从对象 (B) 到对象 (C) 的态射 (g),则必须存在从对象 (A) 到对象 (C) 的态射 (g \circ f),这称为态射的组合。

2024-07-16 14:41:38 1924

原创 线性代数中的“过定系统”和“欠定系统”

解决欠定系统的一种常见方法是寻找一个特定类型的解,比如最小范数解(Minimum Norm Solution),即在所有可能的解中,选择一个使得 (x) 的范数(通常是欧几里得范数)最小的解。它的目标是找到一个解向量,使得所有方程的残差平方和最小。的矩阵,(x) 和 (b) 分别是 (n) 维和 (m) 维的向量,且 (m > n),那么可以通过求解正规方程(Normal Equations)的矩阵,(x) 和 (b) 分别是 (n) 维和 (m) 维的向量,且 (m < n),那么该系统可能有无数个解。

2024-07-03 08:27:28 1631

原创 什么是Convex Hull(凸包)

对于一个点集 ( S )(可以在二维平面、三维空间或更高维度中),其凸包 (ConvSConvS) 是包含 ( S ) 的最小凸集。换句话说,凸包是一个包含 ( S ) 的最小凸区域。

2024-07-02 08:33:02 1452

原创 怎样求解一个系统的稳态输出

要求解一个系统的稳态输出,需要根据系统的类型(如线性时不变系统、非线性系统等)、输入信号的性质(如阶跃信号、正弦信号等)以及系统的描述方法(如微分方程、状态空间模型等)。

2024-06-27 10:42:32 4009

原创 数学术语:“suprema” 和 “supremum”指什么

在数学中,“suprema” 和 “supremum” 是相关的术语,分别表示某个集合的上确界(或上界中最小的元素)。具体来说,是一个集合的上确界,是该集合所有上界中的最小值。是 supremum 的复数形式,表示多个集合的上确界。它们在分析、优化等领域有广泛应用,帮助定义和计算函数的上界。

2024-06-15 08:42:55 1599

原创 怎样为Django的server配置跨域资源共享(CORS)

为了在 Django 服务器中配置跨域资源共享(CORS),你可以使用库。这个库可以帮你轻松地设置 CORS 规则,从而允许你的 Django 服务器处理来自不同源的请求。

2024-06-13 15:28:07 864

原创 怎样为Flask服务器配置跨域资源共享

为了在 Flask 服务器中配置跨域资源共享(CORS),你可以使用flask-cors扩展。这个扩展可以帮助你轻松地设置 CORS 规则,从而允许你的 Flask 服务器处理来自不同源的请求。

2024-06-13 15:24:53 807

原创 数学符号sup:什么是集合上确界

在集合论和实分析中,如果一个集合 S 的元素都是实数,并且这个集合有上界(即存在某个实数 M,使得对于 S 中的所有元素 x,都有 x ≤ M),那么这个集合的 supremum 就是所有这些上界中的最小者。但如果集合没有最大值,其上确界可能是集合趋向但不达到的一个值,或者是集合的上界中最小的那个数。例如,集合 (0, 1)(即所有大于0小于1的实数)没有最大值,但它的上确界是1,因为1大于集合中的所有数,而且没有比1更小的数能作为这个集合的上界。如果 t 也是 S 的一个上界,则 sup(S) ≤ t。

2024-06-13 08:46:06 5054

原创 什么是Rademacher复杂度(Rademacher Complexity)

设 (HH) 是一个假设空间,Sx1xnSx1​...xn​))是从分布P(P)P中独立同分布(iidi.i.d.iid)抽取的样本点组成的集合。Rademacher复杂度是通过在样本点上添加Rademacher随机变量来定义的,这些随机变量以相等的概率取值为+1或-1。具体来说,对于每个样本点 (xix_ixi​),我们关联一个Rademacher随机变量 (σi\sigma_iσi​Rademacher复杂度 (RnHRn。

2024-06-13 08:41:27 1908

原创 OpenCV 4.X 使用CvxText在图片显示汉字

最近又需要在图像上实时绘制汉字。一般来讲如果绘制汉字的需求绕不过的话,直接绘制在图片总归是最easy的实现方式。因为不然的话可能要额外调用GUI组件来实现。一般都是用freetype+cvxtext,老生常谈。且不说实际实现起来是否最easy,主要是这种方法多年来实践了无数次了,不过今次切换到OpenCV4.5,突然发现可能又要修改CvxText代码才可以,因为直接使用,不work。

2024-06-07 13:36:39 545

原创 矩生成函数(Moment Generating Function:MGF)简介

对于一个随机变量 (X),其矩生成函数 (MXtM_X(t)MX​tMXtEetXMX​tEetX其中,(E\mathbb{E}E) 表示期望值运算符,(t) 是一个实数参数。

2024-06-04 09:47:10 4262

原创 使用Docker辅助图像识别程序开发:在Docker中显示GUI、访问GPU、USB相机以及网络

当前时间是2023年,cuda已经更新到了12,ubuntu也已经发行到了版本号22,可以看出所选的版本是比较次新的版本,算是对兼容性的一个折衷。可以看到,内网镜像中心,其实也是一个docker镜像的形式,把registry镜像拉下来,自动启动服务运行在机器上。如果在Docker中开发的是带有GUI的应用程序,也就是在docker中显示GUI,需要启动支持GUI的docker镜像。这是因为docker中的GPU环境,没有开启nvcuvid的支持,需要在启动docker的时候,加入参数。

2024-06-04 09:08:59 1337 1

原创 在本地局域网的 Ubuntu 16.04 主机安装 GitLab 服务

GitLab 和 GitHub 一样强大。我决定从 SVN 版本控制系统切换到 Git。我们在本地局域网中运行 GitLab 服务器。我发现关于 GitLab 安装的博客都太长且太复杂,不适合在没有域名的本地局域网中使用 GitLab,所以我写了这篇文章。在安装 GitLab 之前,请更新 Ubuntu 仓库。安装前置软件包。在 postfix 安装过程中选择 ‘Internet Site’,并输入一个用于发送电子邮件的服务器域名。如果你没有,就随便输入一个你喜欢的。

2024-06-04 08:23:41 551

原创 OpenCV图像裁剪:使用&运算符在OpenCV图像裁剪时进行边界检查

一般来讲,冗长的代码不易于维护,可读性不会太强。另外以上面这段实现为例,由于反复使用同一变量,仅仅为了对其不同的成员做类似的操作,非常容易导致低级错误。属于位运算,是按位与的功能。cv::Rect类型重载了它,可以想象它的功能就是取矩形的相交区域。所以要对图像ROI的cv::Rect进行边界限制,那么将ROI和表示图像区域的Bounding Box求相交区域即可。如果roi的坐标超出了图像的合法区域,会引发运行时错误,导致程序崩溃。这样写代码,看上去不太直观,而且有些冗长,更谈不上优雅或者可读性。

2024-06-04 08:15:20 845

原创 C++使用QtHttpServer开发服务端Server的Http POST接口和客户端Client示例

【代码】C++使用QtHttpServer开发服务端Server的Http POST接口和客户端Client示例。

2024-06-04 08:06:53 937

原创 CMake管理C/C++工程的一点心得

现在我自己的几乎所有C/C++项目均使用CMake管理。CMake语法简洁功能强大,并且大部分主流C/C++ Lib库都内建了对CMake的支持。我在工作中主要使用到比较有代表性的Lib库:OpenCVOpenCV是Intel维护的开源库,图像处理必备BoostBoost是对C++语言最重要的扩展库,提供了对标注库的扩展、标准编译器尚未支持的新特性和一些语法糖Qt强大的UI库CUDANVIDIA显卡并行加速支持下面从一个最简单的程序开始,介绍CMake在实际使用中的一些方式。

2024-06-03 16:21:55 751 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除