Unity AR Foundation环境下NatCorder-NativeGallery的部署与OpenJDK版本适配策略

Unity AR Foundation环境下NatCorder-NativeGallery的部署与OpenJDK版本适配策略

ARFoundation-NatCorder-NativeGallery部署

环境准备

这是一个Github上的一个示例项目(链接)。下载完成后推荐使用Unity 2021.3.45f2c1(链接下载)进入项目

然后根据安装以下选项:(Visual Studio主要是代码编辑器【可选】,但不推荐选,因为它默认安装在C盘,在AI时代采用Cursor作为代码编辑器就好了)

项目构建

该项目中已经预先配置了AR Foundation包。Unity 在打开项目时会根据项目的配置文件(如 Packages/manifest.json)自动识别并安装缺失的包,如图下所示:

【位置:Windows > Panckage Manager】

在Unity编辑器中,找到并点击这个来加载场景组件:

以安卓为例,在构建前需确保安卓的Play Settings正确:

【位置:file > Build Settings > Player Settings > Player > 安卓】

最后可以进行项目构建了,项目构建需要5~8分钟时间,构建完后会返回一个apk文件,上传到安卓手机安装即可。

【位置:file > Build Settings > Player > 安卓】

OpenJDK版本适配问题

采用Unity 2021.3.45f2c1编辑器下载的OpenJDK版本是1.8,但是在这个项目中JDK版本要求是11.0.14.1。因此在打包时直接报错:

根据提示:我们追踪到Edit > Preferences > External Tools

在安装JDK情况下,却显示missing了项目推荐JDK,取消勾选可发现项目中JDK版本要求是11.0.14.1:

解决方案:点击链接下载11.0.14.1。下载完后,

可以把JDK包放在.../Editor/2021.3.45f2c1/Editor/Data/PlaybackEngines/AndroidPlayer,

最后在Unity中把JDK路径换成.../Editor/2021.3.45f2c1/Editor/Data/PlaybackEngines/AndroidPlayer/OpenJDK11即可

如果想长期使用OpenJDK11,当然一劳永逸的方法:把上图中的目录OpenJDK更名为OpenJDK1.8,目录OpenJDK11更名为OpenJDK,重新勾选JDK Installed with Unity即可。

Read more

【Actix Web】Rust Web开发实战:Actix Web框架全面指南

【Actix Web】Rust Web开发实战:Actix Web框架全面指南

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,阿里云开发者社区专家博主,ZEEKLOG全栈领域优质创作者,掘金优秀博主,51CTO博客专家等。 🏆《博客》:Rust开发,Python全栈,Golang开发,云原生开发,PyQt5和Tkinter桌面开发,小程序开发,人工智能,js逆向,App逆向,网络系统安全,数据分析,Django,fastapi,flask等框架,云原生K8S,linux,shell脚本等实操经验,网站搭建,数据库等分享。 所属的专栏:Rust语言通关之路 景天的主页:景天科技苑 文章目录 * Rust Web开发 * 一、Actix Web框架概述 * 1.1 Actix Web的特点 * 1.2 Actix Web与其他Rust框架比较

《AI IDE 巅峰对决:Cursor vs. Kiro 全方位深度体验报告(附 Token 消耗与避坑指南)》

《AI IDE 巅峰对决:Cursor vs. Kiro 全方位深度体验报告(附 Token 消耗与避坑指南)》

一、 开篇:当“快”不再是唯一标准 在过去的一年里,我们习惯了 Cursor 带来的“快”——Tab 一键补全,Chat 随问随答。但在面对复杂的企业级项目时,我们常遇到这样的痛点: * 对话轮数多了,AI 开始“胡言乱语”或忘记之前的设定。 * 代码写得很快,但文档没跟上,维护起来全是“债”。 * 功能写完了,一跑全是 Bug,排查时间比写代码还长。 这时,AWS 推出的 Kiro 给了我们另一种选择。它不急着写代码,而是先写文档。这听起来很反直觉,但在实际工程中,这可能是解决“代码屎山”的良药。 二、 核心体验:两种截然不同的编程哲学 1. Cursor:Chat-First(聊天优先)—— 速度即正义 Cursor

nlp_structbert_sentence-similarity_chinese-large保姆级教程:Streamlit Session State管理多用户会话

nlp_structbert_sentence-similarity_chinese-large保姆级教程:Streamlit Session State管理多用户会话 你是不是也遇到过这样的问题?用Streamlit做了一个很酷的AI应用,比如这个中文句子相似度分析工具,但每次刷新页面,输入框里的文字就没了,计算过的结果也清空了。或者,当你想同时为多个用户提供服务时,发现他们的数据会互相干扰。 今天,我就来手把手教你解决这个问题。我们将以nlp_structbert_sentence-similarity_chinese-large这个强大的中文语义匹配工具为例,深入讲解如何用Streamlit的Session State来优雅地管理多用户会话,让你的应用从“玩具”升级为“工具”。 学完这篇教程,你将掌握: 1. Session State的核心概念和工作原理。 2. 如何为你的AI应用(如句子相似度计算)添加稳固的会话记忆。 3. 实现多用户数据隔离的实战技巧。 4. 避免常见陷阱,打造更专业的Web应用。 准备好了吗?让我们开始吧。 1. 环境准备与项目回顾

医疗AI场景下算法编程的深度解析(2026新生培训讲稿)(八)

医疗AI场景下算法编程的深度解析(2026新生培训讲稿)(八)

第15章 模型融合与集成策略 在机器学习竞赛和实际应用中,模型融合(Model Ensemble)是提升预测性能的利器。通过组合多个不同的基模型,集成策略能够综合各个模型的优势,抵消单个模型的偏差和方差,从而获得比任何单一模型更稳定、更准确的预测结果。在医疗AI领域,模型融合同样具有重要价值——面对复杂多模态的医疗数据,单一模型往往难以全面捕捉所有信息,而融合多个异质模型可以提升诊断的鲁棒性和准确性。本章将从集成学习的基本思想出发,系统介绍常见的模型融合方法,包括投票法、平均法、Stacking、Blending等,并通过实战案例展示如何构建融合模型来提升疾病预测性能。 15.1 集成学习的基本思想 集成学习(Ensemble Learning)的核心思想是“三个臭皮匠,顶个诸葛亮”——通过结合多个学习器来完成学习任务,通常可以获得比单一学习器更优越的泛化性能。根据个体学习器的生成方式,集成学习主要分为两大类: * Bagging:并行训练多个独立的基学习器,然后通过平均或投票进行结合。典型代表是随机森林。Bagging主要降低方差。 * Boosting:串行训练基学习