- 博客(28)
- 收藏
- 关注
原创 从 Harris 到 SIFT#
在上一篇中,我们详细介绍了,其首次系统性地用结构张量来描述局部特征。Harris 的窗口大小是固定的,比如 7×7。尺度变了,特征就变了。换句话说,它只有,没有,而拼接算法的核心步骤之一就是跨图像匹配同一特征。因此,在 Harris 诞生后的十几年里,计算机视觉领域一直在寻找一种更好的局部特征,于是,而 1999 年 Lowe 提出了。2004 年,其正式发表定稿版论文,即使在今天 DL 方法盛行的背景下,SIFT 在图像拼接、SLAM、三维重建等领域依然被广泛使用。
2026-07-06 15:00:35
178
原创 WebSocket 双向通信完整教程
HTTP 协议是单向客户端发起请求 → 服务端响应 → 连接关闭❌ 服务端不能主动推送消息❌ 需要轮询(客户端不停问"有新消息吗?")❌ 每次请求都要重新建立连接(开销大)
2026-07-06 14:59:59
221
原创 10种JavaScript特效实例让你的网站更吸引人
我们有三种主要的方法(从难到易):自己动手写脚本;使用类似于jQuery和mooTools的JavaScript框架(可以让编写代码变得更容易些);使用能工作于现有的JavaScript框架下的提前预置好的脚本或那种从头开始开发的创建者。这篇文章适合那些打算提高工作效率或不愿意从头开发脚本的人阅读。这里收集了10种的且的JavaScript特效来改进您的网页站界面,从而得到更多的用户体验。这10种javaScript特效回味你的网站带来意想不到的视觉盛宴,而且安装和使用都比较容易。
2026-07-05 15:19:01
187
原创 第二章 寄宿WCF服务
到目前为止, 我们所学习到的WCF服务,在多数情况下,都只仅仅关注配置文件中的传输协议和地址的详置信息。两者的不同点:TCP堆栈旨在提供物理网络的抽样,而通道堆栈不仅提供消息传送方式的抽象,还提供其他功能(比如消息的内容或通信所使用的协议)的抽象。当请求达到该侦听器后,WCF运行时根据配置文件中的某个具体地址对于的绑定信息创建一个通道堆栈,然后引导来自客户端的数据通过该堆栈。而且在这两种情况下,两个堆栈通信时,每个层均与另一个堆栈中的相应层通信,例如,IP与IP层通信,TCP层与TCP层通信,以此类推。
2026-07-04 15:28:04
203
原创 Scrum之成败——从自身案例说起,仅供参考
最后我想说说Scrum适合的团队,这样的团队需要有一些技术成熟度比较高(五至八年经验)、并且比较稳定地做技术的成员,使用Scrum可以使团队日益默契,并改善技术团队沟通交流不善、积累反思不多的常见问题,基本上,Scrum的正面意义在于,以前的项目管理、开发管理都只注意到了需求、技术、测试等机械性问题,而Scrum把团队管理、团队建设的思路引进到了技术团队。扁平式组织,想象得太完美了,团队里各种性格的人都有,不服你不爽你的也总有人在,吵个没完没了,各做一套,家常便饭。敏捷对工程师的心智有过高的要求。
2026-07-04 15:27:28
189
原创 程序员面试什么最重要?
最后总结起来,我的经验是: 1) 面试官的目标是找到”工作好“的人,一定要围绕这个目标来进行面试,如果把面试当成了算法或操作系统期末考试这就走入了误区;2) 面试过程是通过学历、性格、基础、经验、算法等可以测试的因素去综合判断面试者“工作好”的概率;3) 在各种因素中,性格 > 经验 > 基础 > 算法。性格是最重要的,如果性格不好,所有技术能力都会大打折扣,而且技术缺陷容易弥补,性格缺陷很难改变;经验体现了一个人的综合能力,你可以从面试者过去的经历中判断他能从事哪种工作,不能从事哪种工作;
2026-07-03 19:25:02
231
原创 优化反射性能的总结(上)
如果我们需要设计自己的数据访问层,那么就需要动态创建所有的数据实体对象,尤其是还要为每个数据实体对象的属性赋值, 这里就要涉及用反射的方法对属性执行写操作,为了优化这种反射场景的性能,我们可以用下面的方法来实现:现在可以用下面的测试代码检验委托调用带来的性能改进:我用VS2008 (.net 3.5 , CLR 2.0) 测试可以得到以下结果:从结果可以看出:1. 反射调用所花时间是直接调用的2629倍,2. 反射调用所花时间是Emit生成的Set委托代码的82倍,
2026-07-03 19:24:18
189
原创 【javascript】函数中的this的四种绑定形式 — 大家准备好瓜子,我要讲故事啦~~
javascript中的this和函数息息相关,所以今天,我就给大家详细地讲述一番:javascript函数中的this一谈到this,很多让人晕晕乎乎的抽象概念就跑出来了,这里我就只说最核心的一点——函数中的this总指向调用它的对象,接下来的故事都将围绕这一点展开 (提醒前排的筒子们准备好茶水和西瓜,我要开始讲故事啦!!)【故事】有一个年轻人叫"迪斯"(this),有一天,迪斯不小心穿越到一个叫 “伽瓦斯克利”(javascript)的 异世界,此时此刻迪斯身无分文, 他首先要做的事情就是——找到他的住
2026-07-02 21:51:36
199
原创 jquery.i18n.properties前端国际化解决方案“填坑日记”
关于jquery.i18n.properties的使用,网上资料很多,比较完整的使用可以参考,有比较详细的使用说明。这里博主简单概述下过程。
2026-07-02 21:50:43
235
原创 只提炼主干部分,去掉了一些细枝末节,如日志输出、时间记录等。
不过由于是多线程,所以Processor不能贸然通知Writer结束信号,需要在Processor内部弄一个计数器,只有计数器达到预期的数量的那个线程的Processor,才能发起结束通知。虽然前面部分的数据速度与之前的方案相比慢了不少,但却完美解决了大数据量limit操作的超长等待时间,预防了危险的发生。结束的条件是,它被上一环通知了结束,并且从自己的队列中。方法的实现,基于之前的设计,即是对象中有一个。结束的条件是批量读取的数据超过了一开始设置的。类型的属性,用来接收上一环传来的数据。
2026-07-01 17:04:25
192
原创 什么是操作系统的接口
既然使用者是通过操作系统接口来使用计算机的,那到底是什么是操作系统提供的接口呢?(interface)这个词来源于电气工程学科,指的是插座与插头的连接口,起到将电与电器连接起为的功能。后来延伸到软件工程里指软件包向外提供的功能模块的函数接口。所以接口是用来连接两个东西、信号转换和屏蔽细节。那对于操作系统来说:操作系统通过接口的方式,建立了用户与计算机硬件的沟通方式。用户通过调用操作系统的接口来使用计算机的各种计算服务。bash/sh。
2026-07-01 17:03:36
193
原创 SQLAlchemy介绍
是一个功能强大且灵活的 Python SQL 工具包和对象关系映射(ORM)库。它被广泛用于在 Python 项目中处理关系型数据库的场景,既提供了高级的 ORM 功能,又保留了对底层 SQL 语句的强大控制力。SQLAlchemy允许开发者通过 Python 代码与数据库进行交互,而无需直接编写 SQL 语句,同时也支持直接使用原生 SQL 进行复杂查询。下面是和我们常规数据库对象的对应关系说明。Engine 连接对象 驱动引擎。
2026-06-30 16:17:27
249
原创 Python元类Metaclass初探:理解类的类
在Python中,type函数我们都很熟悉——它用于查看对象的类型。但type它是Python中所有类的默认元类。# 查看类的类型passMyClass的类型是type,这意味着type是MyClass的类,也就是它的元类。自定义元类必须继承自type"""最简单的元类"""pass# 使用元类创建类x = 1。
2026-06-29 16:22:11
217
原创 Manim实现动态交点计算--从一个动点问题说起
"""已知两点,求直线y = kx + b的k和b""""""已知两条直线方程,求交点坐标"""有了这两个函数,我们就可以在Manim中动态更新交点了。
2026-06-29 16:21:11
193
原创 Spring 循环依赖与三级缓存
循环依赖是指两个及两个以上的 Bean 互相持有对方引用,形成闭环依赖关系。典型场景:A 依赖 B、B 依赖 A;或多 Bean 闭环:A→B→C→A。循环依赖解决范围:仅单例 + Setter/字段注入可解,构造注入、多例 Bean 直接报错。
2026-06-28 16:31:56
197
原创 IT运维监控/可观测性
指标、日志、链路和事件回答的问题不同。指标回答状态有没有变化,比如流量下降、错误率上升、P99 变慢、CPU 升高、连接数打满、队列堆积。日志回答程序或请求里发生了什么,比如错误码、异常栈、业务字段、TraceID 和用户请求上下文。Trace 回答一次请求经过哪些服务,哪个调用阶段慢了或错了。事件回答这个时间点系统环境发生了什么变化,比如发布、配置、扩缩容、重启、云资源异常、告警触发、工单处理和运营活动。事故定位慢,很多时候不是缺指标,而是只有“异常结果”,没有“变化证据”。一个接口错误率从 0.1% 升
2026-06-28 16:31:04
198
原创 近期使用Claude Code + Opus4.7设计开发了一个开源项目:Qianyuan AI Agentic Framework
这类 Markdown Skill 是“提示型技能”,不会执行外部命令或暴露工具调用;需要真实工具能力时仍建议实现。当某个 Skill 被选中时,它的工具会进入 LLM tools,,避免多个 MCP Server 之间的工具名冲突。当该 Skill 被选中时,Markdown 正文会注入系统提示。、目录中的 Markdown Skill、以及外部 MCP Server 暴露的工具。每轮都会重新计算活动 Skill 集合,所以"渐进式扩展"是自动发生的。获取,调用时再转发到对应 MCP Server 的。
2026-06-27 20:03:05
217
原创 JaVers 版本历史功能完整实现指南
Data@Id // JaVers 的 @Id,不是 JPA 的@PropertyName("名称")@PropertyName("状态")@PropertyName("子项列表")@PropertyName("创建时间")/*** 工厂方法:从 Entity 构建 DTO*/.toList());return dto;
2026-06-27 20:02:25
205
原创 大数据没那么远:把散乱数据理顺,让业务敢用
这样不同报表、不同接口、不同分析任务,就不用各自维护一套“客户是谁、地区怎么分、机构怎么归属”的规则。比如去掉重复数据,统一时间格式,补齐缺失字段,把“男、M、1”统一成同一种性别口径,把不同系统里的业务编号对齐。它们的作用是把“原始数据、公共维度、清洗明细、汇总数据、业务使用数据”分开。来源可能是业务数据库、外部接口、日志文件、Excel 文件,也可能是消息队列。原始数据要保留,处理后的数据要分层,最终给业务查询的数据也要单独组织。维度,就是看数据的角度,比如人、机构、地区、时间、商品、客户。
2026-06-25 19:30:15
222
原创 Tomcat的架构设计和启动过程详解 _
所谓Servlet,其实就是Sun为了让Java能实现动态可交互的网页,从而进入Web编程领域而制定的一套标准!在互联网兴起之初,当时的Sun公司(后面被Oracle收购)已然看到了这次机遇,于是设计出了Applet来对Web应用的支持。不过事实却并不是预期那么得好,Sun悲催地发现Applet并没有给业界带来多大的影响。经过反思,Sun就想既然机遇出现了,市场前景也非常不错,总不能白白放弃了呀,怎么办呢?于是又投入精力去搞一套规范出来,这时Servlet诞生了!
2026-06-24 17:06:30
184
原创 最小二乘问题详解21:稀疏GCP约束下的自由网平差与弱约束融合
至此,我们不仅解决了单目视觉重建的尺度不确定性问题,更在稀疏控制点的约束下,实现了从“相对结构”到“绝对位姿”的完整闭环。这种策略既保留了纯视觉 SfM 的灵活性,又利用 Sim3 解决了绝对定向的初值问题,最后通过联合 BA 榨干了 GCP 的精度潜力,是目前工程实践中处理稀疏 GCP 最稳健的方案。通过这种“线性初值 + 非线性优化”的组合操作,我们既能保证求解的稳定性,又能获得亚像素级的绝对定位精度,完美解决了自由网到真实世界的映射问题。:优化变量不是直接优化 s,而是优化 logs。
2026-06-24 17:05:34
207
原创 【Agentic RL / 强化学习 / OPD】OpenClaw-RL 源码阅读笔记 --- (3)--- 总体思考目录
如果把 Agentic RL 理解成一个在真实环境里持续交互、持续采样、持续更新的策略学习系统,那么最重要的就不再是这一步用哪种 RL 算法,而是训练闭环能否长期守住三个更底层的条件。第一不变量不是说"模型要随机”,而是说:在每种情境下,模型必须仍然"知道"多种有意义的应对方式,并且真实地有能力选择它们。三种方法没有区别 --- 这是OpenClaw框架层面的选择(--no-entropy-reg),不是各方法独立决定的。token级熵测试的是”用词多样性",行为级是”策略多样性",前者高不代表后者没有。
2026-06-22 20:17:41
212
原创 上位机程序集的反编译与加壳保护
未加密的上位机程序集,通过ILSpy可轻松还原为可读性极强的完整源代码,甚至能保留原始的类名、方法名、变量名及注释信息,核心业务逻辑毫无隐藏,核心逻辑完全暴露,若程序包含敏感算法、商业逻辑或隐私数据处理流程,极易被篡改、抄袭,存在极大的安全隐患。(2)ILSpy反编译尝试:将加密后的程序集加载到ILSpy中,工具无法正常解析其内部结构,左侧导航栏可能仅显示混乱的命名空间(如随机生成的字符组合),右侧无法显示有效的源代码,或仅显示加密后的乱码、无效指令,无法识别任何核心方法或逻辑。
2026-06-22 20:16:24
334
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅