自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Flutter 项目运行踩坑记录:pub TLS、Flutter SDK API 不兼容、Gradle 找不到 flutter_embedding_debug 与 Android 运行日志分析

本文记录了在Windows环境下运行Flutter项目Memoria智能影记时遇到的一系列问题及解决方案。主要问题包括:1)pub依赖下载时的TLS错误,通过切换镜像源解决;2)Flutter API不兼容,通过升级SDK或修改代码适配;3)Gradle找不到flutter_embedding_debug,通过清理缓存和预下载解决;4)运行时大量警告日志的分析与处理建议。文章详细描述了每个问题的排查过程,提供了完整的修复流程,并针对项目日志中暴露的安全隐患和性能问题给出了优化建议。

2026-06-20 22:41:20 224

原创 Flutter 本地 AI 相册工程收口:从屏幕常亮、标签体系到照片属性后台队列

本文记录了Flutter本地智能相册APP的工程优化过程,主要完成6项核心改进:1)实现应用前台使用时屏幕常亮以支持长任务处理;2)完善标签分类体系,新增"氛围情绪"粗类并确保标签映射完整性;3)优化相册分析提示的持久隐藏逻辑;4)修正创作搜索边界,不再单独过滤截图;5)补全照片属性后台队列(OCR/人脸识别等);6)新增83个测试并统一接入回归测试入口。这些改进强化了APP的稳定性、数据完整性和用户体验,体现了AI相册开发中数据契约、边界控制和回归测试的重要性。

2026-06-15 20:51:27 433

原创 Flutter 相册 APP 收尾优化实战:未分析任务横幅持久隐藏与标签回归测试补强

本文总结了Flutter本地智能相册APP在完成核心视频模态验证后,针对产品体验进行的两个关键改进:1)实现未分析任务横幅的持久化隐藏功能,用户隐藏提示后即使重启APP也不会再次出现,同时确保新任务到来时能重新提醒;2)优化标签分类策略,避免弱置信但相对最优的样本错误落入"其他"类别,通过补充回归测试保障核心分类逻辑。这些改动虽小但至关重要,使产品从"功能可用"迈向"体验友好"阶段。

2026-06-12 22:39:20 472

原创 Flutter 相册 APP 视频模态稳定化实战:从远端重构冲突到真机 Smoke Test

本文记录了Flutter相册APP视频AI分析链路从"接入但不可靠"到"工程稳定"的完整修复过程。针对视频模态存在的八大核心问题,通过增加embedding元数据(记录媒体类型、模型版本、帧来源等)、隔离视频与图片处理链路、适配远端架构重构等关键措施,实现了:1)视频分析过程可追溯;2)错误类型可识别(如重复帧降级);3)不污染图片业务逻辑。同时解决了Android真机编译、模型权重识别等配套问题,最终在真机测试中验证了视频分析链路的稳定性。

2026-06-10 22:42:35 1081

原创 Flutter 相册 APP 视频模态稳定化实战:从视频抽帧、Embedding 元数据到 Android 真机启动修复

本文记录了一次Flutter相册APP视频AI分析功能的工程修复过程。原项目存在视频输入不可信(可能退化为缩略图)、视频与图片embedding混用(污染图片链路)、视频下游策略激进等问题。修复方案包括:1)确保视频输入可信,完善抽帧诊断信息;2)新增MediaEmbeddingRecord结构区分媒体类型;3)持久化embedding元数据便于追溯;4)隔离视频与图片embedding存储;5)收缩视频标签和垃圾过滤策略;6)统一前后台分析路径;7)同步ObjectBox生成文件。

2026-06-09 21:38:17 798 1

原创 【端侧 AI 部署实践】为 Memoria Mobile Vision Assets 补充 NCNN 模型资产,并完成 ONNX-vs-NCNN 数值验证

本文记录了为Memoria项目的MobileCLIP-S2模型补充NCNN版本部署资产的过程。主要工作包括:1)发布NCNN格式的image/text encoder和projection layer模型文件;2)进行ONNX与NCNN输出的数值一致性验证,获得0.99999988的余弦相似度;3)修正了NCNN输入处理的关键技术细节;4)建立版本管理机制并更新工具链。作者特别强调不发布未经充分验证的MobileViCLIP-small半成品,体现了对工程质量的严谨态度。

2026-06-05 10:30:00 724

原创 【踩坑记录】UTF-8 和 GBK 编码冲突导致代码全变?Git 为什么没有提示冲突?

摘要:本文探讨了Git项目中因文件编码错误(如UTF-8被GBK保存)导致的乱码问题。Git仅比较字节流而不识别编码差异,导致这类问题容易被误判为普通修改而非冲突。作者分析了问题现象(乱码、转义字符、大范围Git diff)、危险性和排查方法(查看编码、Git diff、IDE提示),并提供了修复方案:恢复文件、迁移有效修改、转换编码。最后强调预防措施,包括统一项目编码为UTF-8、配置IDE/Git工具链、添加提交前检查,尤其对含中文的AI项目(如Prompt文件)需严格规范,避免编码污染影响功能逻辑。

2026-06-01 10:00:00 469

原创 【端侧 AI 部署】MobileCLIP 导出 ONNX/TFLite 并发布到 Hugging Face 的完整实践

摘要:Memoria项目发布移动端视觉模型工具链v0.1版本,实现PyTorch模型到ONNX/TFLite的完整转换流程。该版本包含MobileCLIP-S2和MobileCLIP2-S2两种模型的ONNX格式及float16量化TFLite格式,通过验证脚本确保导出模型与原始PyTorch模型的输出误差极小(余弦相似度>0.999999)。工具链提供批量导出、验证、量化及HuggingFace上传功能,采用标准化目录结构包含配置文件、指标数据和文档说明。

2026-05-30 10:05:10 765

原创 Flutter 智能相册:基于逆地址解析实现「旅行记忆检测」

本文介绍了在AI原生相册项目中新增的旅行记忆检测功能。该功能通过分析照片的GPS数据和逆地址解析结果,识别用户短期异地停留的生活轨迹,实现了从"地点展示"到"轨迹理解"的升级。系统采用规则检测而非大模型,通过事件优先聚合、常驻城市识别、置信度评分等算法,在保证性能的同时准确识别1-14天的旅行片段。实现上采用轻量快照对象和isolate计算,避免阻塞UI,并严格进行日志脱敏保护隐私。该功能为后续的旅行回忆生成、照片图谱等应用场景奠定了基础,体现了智能相册从存储到理解。

2026-05-07 14:30:11 544

原创 Flutter 智能相册实战:把“记忆星球”从炫技 Demo 优化成可用的照片图谱

《智能相册记忆星球功能优化实践》 本文记录了Memoria智能相册项目中"记忆星球"功能的优化过程。该功能将照片可视化为可旋转的球形图谱,通过节点和关系线展示照片间的时空关联。初始版本存在视觉过载和性能问题,通过三轮优化得到改善: 界面精简:节点从96减至42,关系线限制30条,去除冗余视觉元素,突出核心球形结构 加载优化:采用两阶段异步加载,先显示节点再补全关系线,提升首屏响应速度 性能优化:将CPU密集型计算移至isolate执行,拖动时减少绘制负担,优化数据结构。

2026-05-04 23:39:05 382

原创 Flutter 实现「记忆星球」:一次照片图谱的视觉降级与性能优化实践

本文记录了AI相册项目"记忆星球"功能的优化过程。该功能通过球形网络可视化用户的照片关系,但初始版本存在节点过多、视觉杂乱、性能不足等问题。优化策略包括:将默认节点数从96降至42,限制关系边最多30条;隐藏背面节点并按深度调整显示效果;简化背景和UI控件;增加异步加载和隔离计算等。这些调整显著提升了视觉层次感和移动端性能,使功能从技术演示向可用产品迈进。文章强调移动端设计中"少即是多"的原则,并指出后续可进一步优化异步加载和计算性能。

2026-05-02 20:40:06 747

原创 Flutter 智能相册项目工程化治理实战:从日志脱敏、中文乱码到 Impeller 与 Analyzer 收口

本文记录了作者在维护Flutter智能相册项目Memoria时进行的工程化整理工作。该项目功能复杂,涉及相册扫描、本地数据库、AI模型等多个模块。作者针对运行日志隐私风险、中文乱码、生成文件管理、Flutter版本兼容性等问题进行了系统治理,包括:将调试日志加入.gitignore避免隐私泄露;修复影响AI输出的中文乱码;调整Isar生成文件追踪规则;移除废弃的Impeller配置;迁移deprecated API;优化Analyzer配置降低噪音。这些改动虽不涉及新功能开发,但显著提升了项目的可维护性

2026-05-01 22:26:37 629 1

原创 一次 Flutter 智能相册项目的 Git 合并实战:从分支整理到服务层冲突治理

这篇文章记录了一个Flutter智能相册项目在合并大型业务分支时的实战经验。当本地重构分支与远端master分支存在显著差异时(相差16个提交),作者通过以下步骤完成合并:1. 使用git stash保护工作区;2. 识别出集中在4个核心service文件的冲突;3. 采用"架构保留+功能迁移"策略,将master新增功能迁移到本地已拆分的模块结构中;4. 特别注意了移动端性能优化、相册扫描可靠性提升等关键改进。文章强调,此类合并不仅是解决文本冲突,更是处理架构与业务语义冲突,需要人工

2026-04-30 22:50:38 564

原创 我是怎么把一个 Flutter 项目从“大文件堆积”重构到“可维护结构”的

本文复盘了一个Flutter相册项目的重构过程,重点阐述了如何安全有效地重构大型代码文件。作者采用分阶段策略:先通过part拆分大文件降低复杂度,再逐步硬化模块边界,最终形成清晰的职责划分。重构过程中注重保持编译链稳定,采用受控方式合并远程新代码,避免大规模重写风险。通过将混杂的service拆分为状态机、runner和processor等组件,项目从"靠人维护"转变为"靠结构维护"。文章强调重构应循序渐进,先理清边界再追求优雅架构,这种务实方法更适合真实项目和团队

2026-04-09 13:30:00 616

原创 四刀继续深挖 AI 相册性能:从人脸源图 decode 到 Isar 写回边界

本文记录了针对端侧AI流水线中face链路的第5-8刀优化过程。第五刀通过复用压缩图内存数据,成功将faceDecodeSrcAvgMs从高位降至几十毫秒;第六刀验证了旧脸过量读取确实存在成本;第七刀尝试复用旧faceid但收益不成立,应果断止损;第八刀证明embedding回写Isar会拖慢put路径,但不足以支撑默认切换。核心方法论是:一次只改一个变量、局部收益不等于整体收益、敢于止损、聚焦头部瓶颈。最终将这条优化线降级为观察项,转向更重要的优化方向。

2026-04-08 11:30:00 642

原创 增强 AI 链路性能剖析并拆分 ai_service 结构:一次面向可观测性与可维护性的重构实践

在端侧 AI 图片分析链路中,真正困难的往往不是“把模型跑起来”,而是当整体吞吐下降时,能不能快速回答两个问题:时间到底花在哪一段了?代码结构是否还支撑得住后续持续优化?这次改动围绕这两个问题展开,主要做了四件事。

2026-04-05 09:45:00 484

原创 我以为是向量数据库拖慢了 AI,相册项目性能复盘后发现真正的锅在这里

本文系统分析了AI图片处理项目的性能瓶颈。通过profiling数据发现,当前主要瓶颈并非ObjectBox向量索引层(仅占5.8ms),而是图片加载(1089ms)、辅助分析(526ms)和人脸检测(488ms)等环节。优化过程分为三阶段:1)将caption生成改为异步,从主链路移除;2)细化profiling指标,发现人脸处理瓶颈在前置环节;3)通过A/B测试验证读图策略,确认"缩略图优先"仍是当前最佳方案。最终结论表明,后续优化应聚焦于辅助图生成、图片解码和人脸处理链路,而非数据

2026-04-05 09:00:00 695

原创 从 CPU 到 NNAPI hardware:一次 MobileCLIP2 在 Android 端的推理迁移与 Benchmark 重构

本文记录了一次将 `MobileCLIP2 ONNX` 从 Android 端默认 CPU 路径迁移到 `NNAPI hardware` 路径的工程实践。这个改动并不只是“给 ONNX Runtime 挂一个 NNAPI provider”这么简单,而是同时完成了三件事:第一,显式建立了 Android 端的 provider 选择链路;第二,将 MobileCLIP2 的视觉编码与文本编码统一接入同一套 provider 机制;第三,重构了 Benchmark 方法,使其能够在“同一模型、同一预处理。

2026-04-04 07:45:00 434

原创 在 Flutter 智能相册中引入 ObjectBox 向量索引层:Memoria 的第一阶段向量数据库接入实践

本文记录了Memoria项目中向量数据库能力的第一阶段落地过程。项目在保留原有Isar业务主库的同时,并行接入了ObjectBox向量索引层,将图片/人脸embedding从业务字段附件提升为独立索引对象。改造内容包括:1)设计专用向量索引实体;2)建立ObjectBox存储服务;3)实现双写双读机制;4)精确版本控制;5)数据治理优化。关键成果包括完成了向量索引的基础设施建设,解决了模型版本混用问题,并优化了已删除照片的处理逻辑。后续计划将重点实现ANN检索功能,接入更多embedding类型,并继续优化

2026-04-03 11:00:00 809

原创 四刀把 AI 相册主链路从“误判瓶颈”打到真实热点

这次优化针对的是一个本地 AI 相册项目,技术栈是 Flutter + Isar + ObjectBox + ML Kit + MobileCLIP + ONNX。一开始最容易被怀疑的是 ObjectBox、ANN、caption,甚至是模型推理本身;但真实 profiling 结果表明,主链路的大头其实集中在图片读取、辅助分析图、尺寸判断和人脸链路。

2026-04-02 14:57:12 719

原创 Flutter 实战避坑:相册页二次刷新被清空、全屏图片拉伸、ML Kit 人脸检测最小尺寸问题

本文复盘了 Flutter 相册类 App 开发中遇到的 3 个典型问题:人物页首屏正常但二次刷新后被清空、全屏图片预览时发生拉伸变形,以及 ML Kit 人脸检测偶发报错 InputImage width and height should be at least 32!。文章结合实际代码,从现象、排查、根因到修复方案进行完整分析,并总结了 Flutter 状态管理、图片解码链路和端侧 AI 输入校验中的常见踩坑点。

2026-03-31 07:45:00 376

原创 从“人物主题”到“身份级记忆”:智能影记新增人脸聚类主线与调试能力实践

本文介绍了智能相册项目中新增人脸聚类主线的关键决策与技术实现。针对原有"人物主题聚类"无法满足身份识别需求的问题,团队建立了独立的人脸聚类系统,核心包括:1) 新增FaceEntity按脸存储数据;2) 构建完整的人脸检测-裁剪-特征提取-聚类链路;3) 实现可替换的FaceEmbeddingService抽象层;4) 开发可视化调试页面。该系统采用"先长大再淘汰"的聚类策略,支持多人脸独立建模,并通过工程优化解决了重复解码、脏数据等问题。当前已完成基础架构搭建。

2026-03-30 11:30:00 1232 1

原创 智能影记 Memoria 开发记录:默认关闭 OCR 干扰,重构语义搜索与人物聚类链路

本次迭代主要优化了OCR识别、搜索功能和人物聚类三个模块。针对OCR识别质量不稳定问题,默认关闭MLKitOCR以避免错误文本污染标签和故事生成,同时保留恢复能力。搜索页重构为"向量检索+AI标签兜底"的混合模式,修复了崩溃问题并降低语义阈值。人物聚类优化了合并逻辑,减少同一个人被拆分成多个簇的情况。这些改进提升了产品稳定性和用户体验,使功能从实验态转向可展示状态。后续计划将继续优化分类检索和人物聚类效果。

2026-03-27 12:00:00 613

原创 Memoria 架构演进:如何优雅解决端侧 AI 检索不准与长耗时阻塞问题

《智能影记-Memoria项目技术重构实践》摘要 本文详细记录了智能影记项目在端侧视觉感知底座的技术重构过程。针对主题聚类性能瓶颈、语义检索准确率低下及工程脆弱性三大痛点,通过架构解耦、渐进式反馈机制和语义优化等策略实现了系统性升级。重点包括:将主题聚类服务拆分为四层架构,提升可维护性;建立缓存复用与分批熔断机制改善用户体验;通过Prompt映射和阈值过滤显著提升检索质量;同时修复了多项关键工程问题。重构后的系统达到了工业级稳定性,为后续功能扩展奠定了坚实基础,先保工程底线,再谈功能创新。

2026-03-23 11:45:00 355

原创 从手搓 ONNX 算子到端侧 RAG 检索:记一次史诗级的端侧 AI 相册重构

本文记录了将智能相册项目从Google MLKit升级为MobileCLIP2-S2模型的完整技术攻坚过程。面对Android端侧环境的多重挑战,包括ONNX算子缺失、Android14权限沙盒限制、脏标签数据清洗等问题,通过计算图等价替换、全局分页扫描、Prompt工程优化等创新方案逐一攻克。最终实现了毫秒级响应的高维语义搜图引擎,构建了包含意图剥离、多路召回等功能的本地混合检索系统。整个过程展现了端侧AI开发中从模型转换到系统适配的全栈技术深度,为移动端多模态AI应用落地提供了宝贵实践参考。

2026-03-19 10:00:00 384 1

原创 把 Memoria 的 MobileCLIP 从单一路径推理,升级成可切换、可对比、可释放的双后端架构

本文记录了Memoria项目中视觉编码架构的全面重构过程。开发重点并非简单替换模型,而是系统性地升级了图片语义理解链路:1)强化中文语义描述能力,引入AI caption作为核心语义输入;2)建立ONNX/NCNN双后端架构,实现可验证、可切换的端侧视觉编码方案。重构涉及多个关键环节:规范模型导出路径、优化预处理性能、统一业务调用接口、完善资源管理机制,并建立了基准测试和向量探针工具。最终实现了从实验性功能到产品级基础设施的升级,为后续性能优化和语义一致性提升奠定了基础。整个改造凸显了端侧AI工程在可验证性

2026-03-18 10:30:00 512

空空如也

空空如也

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

TA关注的人

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