diff --git a/preview/pr-23/2024/09/27/rm24hero.html b/preview/pr-23/2024/09/27/rm24hero.html deleted file mode 100644 index 080f0632..00000000 --- a/preview/pr-23/2024/09/27/rm24hero.html +++ /dev/null @@ -1,981 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -RM2024-英雄视觉开源 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- - - -

RM2024-英雄视觉开源

- - - - - - - - -
- - - - - -
- - - -

- -
- -
-


-
- 华中科技大学 狼牙战队 视觉组 -
-开源链接:https://github.com/HUSTLYRM/HUST_HeroAim_2024 -
- -

效果展示 🎥

- -
-

-全国赛效果 -

- -

-分区赛效果 -

- -
-国赛全程视频: -
- -
- -

功能简介 🔎

- -

本赛季英雄机器人算法开发的功能主要包括前哨站击打、车辆击打辅瞄、绿灯辅助吊射三项。

- -

前哨站击打与车辆击打辅瞄采用了较为广泛使用的延迟击打方案。

- -

绿灯辅助吊射结合先验的距离,通过识别基地顶部的飞镖引导灯辅助吊射。

- -

环境配置 🛠

- -

硬件环境 📡

- - - - - - - - - - - - - - - - - - - - - - - -
硬件型号
车载算力平台NUC11
大恒相机传感器 -
-镜头
-
-8mm 焦段
下位机通信C 板虚拟串口
- -

软件环境 🖥

- -
GCC
-OpenVINO >= 2023.0
-OpenCV
-Eigen
-Sophus
-Glog 
-CeresSolver
-Jsoncpp
-GalaxyCamera
-
- -

由于 yolov8和 yolov10使用了大于 opset11的 op,需要使用 OpenVINO 2023.0以上版本进行编译。具体请参照 OpenVINO官方文档

- -

编译运行 🚀

- -
mkdir build
-cd build
-cmake ..
-make -j8
-./AutoAim
-
- -

框架功能 📦

- -
    -
  1. 使用 OpenVINO 进行深度学习模型的部署
  2. -
  3. 使用 glog 进行日志记录
  4. -
  5. 借助 UDP 协议以及 VOFA+ 工具,进行数据的可视化查看与调试(使用方式见下方开源仓库) -https://github.com/liulog/Debug_udp_VOFA -
  6. -
  7. 使用 jsoncpp 进行配置文件的读取,所有因车而异的参数均可通过配置文件进行调整,所有需要调整的参数见 src/utils/tools/init.json -
  8. -
- -

重要原理阐述 ♾️

- -

静止靶辅瞄 🎯

- -

目标位姿估计 🎯

- -

对于英雄的辅瞄来说,目标的位姿估计尤为重要。首先我们需要知道目标装甲板中心距离。其次需要知道装甲板的朝向,如果目标装甲板的朝向过于倾斜,就有被识别为小弹丸的风险,故需要对大弹丸的击打区间进行判定。

- -

受限于本赛季装甲板的识别方案,我们装甲板灯条存在一定的取点误差,在 8mm 镜头下, PnP 的距离解算误差可达 20%。由于大弹丸的弹速较低,大弹丸的弹道对距离异常敏感, 20% 的距离误差会造成云台的上下抖动。通过引入均值滤波,我们消除了部分抖动,但是对于更远距离的物体存在严重的误差造成弹道偏移。

- -

弹道方程 ♾️

- -

假设炮弹在空气中飞行,考虑空气阻力和重力作用,我们得到的微分方程可以表示为:

- -

$$ -m \frac{\mathrm dv_y}{\mathrm dt} = -mg - k_1 v v_y -$$

- -

其中 $v_y$ 是垂直方向的速度分量, $v$ 是速度的大小, $m$ 是质量, $g$ 是重力加速度, $k_1$ 是与空气阻力相关的系数。

- -

飞行时间由以下公式给出:

- -

$$ -T = \frac{e ^ {k_1 \cdot d} - 1}{k_1 \cdot v \cdot \cos(\theta)} -$$

- -

其中:

- - - -

炮弹的垂直位移由以下公式给出:

- -

$$ -\delta_z = z - \frac{v \cdot \sin(\theta) \cdot T}{\cos(\theta)} + \frac{0.5 \cdot g \cdot T ^ 2}{\cos ^ 2(\theta)} -$$

- -

其中:

- - - -

最终我们使用牛顿迭代法来求解俯仰角度 $\theta$ ,以满足垂直方向的运动方程,具体为:

- -

$$ -\theta_{n+1} = \theta_n - \frac{\delta_z}{f’(\theta)} -$$

- -

其中 $f’(\theta)$ 是垂直方向位移方程对 $\theta$ 的导数。

- -

当目标在世界坐标系下的坐标足够精确时,我们可以用这个方程很好地拟合 42mm 弹丸的飞行轨迹。上述弹道方程中,唯一常数为空气阻力系数,经实验该系数直接使用球体的体积常数就有良好的效果。经过进一步的微调我们将该常数略降低了一些,这与大弹丸表面的凹坑有关。实践上,在 15-16 米每秒的弹速条件下,该方程的主要误差来源于装甲板距离解算的误差。

- -

上述弹道解算代码可见 src/pose_estimate/src/PoseSolver.cpp 中的 solveGimbalPose 函数。

- -

弹道标定 🚀

- -

通过上述控制变量的研究和实验,我们对姿态估计和弹道方程的误差都有了定量的认知。在对英雄弹道标定时,只需要调整相机与云台发射机构的相对误差即可。我们引入了 yaw、 pitch、 roll 三个纬度的相机旋转和一个平移向量描述发射机构和相机之间的误差。

- -

$$ -\boldsymbol P_g=\boldsymbol P_c\boldsymbol R_z(\phi)\boldsymbol R_y(\theta)\boldsymbol R_x(\psi)+\boldsymbol t -$$

- -

其中:

- - - -

该方案实现了对车辆发射过程整体的完整建模,同时保留了可视化调参的方式,只需要调整 $\boldsymbol t$ 和 $\phi, \theta, \psi$ ,可以快速调整。经过实测,在相机正常装配情况下,平移向量仅高度方向敏感,相机的旋转角度可通过将世界坐标系的坐标轴可视化进行标定(见 src/pose_estimate/src/PoseSolver.cpp 中的 solveArmor 函数中的注释部分)。熟练后,仅需 10 分钟可以完成一辆英雄机器人的弹道标定。

- -

该标定算法可见 src/pose_estimate/src/PoseSolver.cpp 中的 Posesolver() 构造函数。

- -

但是该方案也有缺陷,最严重的问题是无法应对倾斜状态下三摩擦轮弹道的自旋。在实践中我们发现,当处于斜坡击打时,由于三摩擦轮对弹丸的受力不均匀,发射出的子弹会产生较大的自旋,该自旋会导致弹道向某方向漂移。且随着倾斜角度的增大,漂移越大。该现象严重影响我们在公路区和小资源岛中间的斜坡处的击打命中率。我们发现该问题后,临时引入了一个与云台 roll 角有关的参数对弹道进行末端修正,解决了这个问题。但该基于末端的修正背离了整体建模的初衷,该修正方法对于近处物体可能造成过修正的问题。

- -

绿灯辅助吊射 🟢

- -

无论是 8 米吊射还是 25 米吊射,在单一平视角度的相机下都几乎无法完整识别装甲板。即便成功识别装甲板,仍会有非常大的解算误差。因此我们设计了一个识别基地顶部绿灯进行辅助吊射的方案。但是绿灯的识别为单点识别,仅依赖于绿灯的识别无法进行姿态解算。我们引入吊射点位距离和高度作为先验知识,结合绿灯的单点识别可以进行姿态估计。

- -

前哨站辅瞄 🎯

- -

本赛季前哨站辅瞄最大的改动在于摒弃了使用先验的转速作为延迟击打参数。经过分析,英雄机器人在前哨站击打时击打区间仅有 80 毫秒左右,超过该区间会造成命中偏差或者被识别为小弹丸。由于我们无法保证自制的前哨站转速与官方前哨站转速完全一致,所以如果使用先验的转速参数,很有可能造成“过拟合”的现象,即使用家中的前哨站可以命中而上场时会被识别为小弹丸或者无法命中。经过实际的测试家中的前哨站与官方给定的参数可能存在 5% 左右的误差,通过调取场上观测日志,我们发现官方前哨站转速本身也会存在 5% 左右的误差,极端情况下,两者叠加可能造成 10% 以上的误差,该误差足以使辅瞄无法命中。因此我们设计算法对前哨站转速去耦合。我们还惊喜地发现,该方案亦可适用于对静止小陀螺的普通步兵进行辅瞄延迟击打,在联盟赛中针对原地旋转的哨兵机器人收获了良好的效果。

- -

前哨站辅瞄还依赖于英雄机器人链路发弹延迟的参数。我们设计了一个测试发弹延迟测定的流程,并实现了发弹延迟 5ms 级别的测定。符合直觉地,弹链的顺滑程度与发弹延迟完全相关。我们通过优化弹链结构,实现了发弹延迟的最小化和稳定。

- -

本赛季英雄机器人前哨站辅瞄算法流程如下。(见 src/pose_estimate/src/PoseSolver.cppantitop 函数)

- -
    -
  1. 拟合前哨站的击打中心。我们设计了一个队列存储每一帧捕获的前哨站装甲板的姿态信息,当队列内装甲板的数量超过一定阈值后,删除距离最远或倾斜角度最大的装甲板。当完整经过第一片扇叶后,前哨站的击打中心即可使用该队列内的所有装甲板的几何平均值得出。
  2. -
  3. 捕获前哨站扇叶经过击打区域的上升沿信号。我们将所有经过击打中心一定距离内的装甲板定义为处于击打区域。每当有扇叶经过该区域时,通过计算该信号的上升沿的时间差即可实现对装甲板旋转速度的估计。
  4. -
  5. 设置延迟击打。当有扇叶经过击打区域时,通过计算弹丸飞行时间结合发弹延迟、前哨站的旋转速度可以得到我们需要延迟击打的时间。
  6. -
- -

上述算法思路非常简单,但需要注意几个问题。

- -
    -
  1. 中心的估计:在我们的深度学习的识别模型中,特定角度下的装甲板会出现取点异常外扩,导致在该角度下 PnP 解算的距离会变近,在上述采用删除距离最远的装甲板的思路中会存在中心点偏移的问题。解决方案是结合倾斜角度进行辅助删除判断。(见 src/pose_estimate/src/PoseSolver.cppantitop 函数)
  2. -
  3. 中心区域的设置:由于 PnP 解算距离误差较大,击打中心实际上可能会出现较大的前后距离误差,如果我们粗暴地设计一个距离范围可能会导致装甲板实际经过击打区域而无触发的情况。数学上可以分析,该问题其实是因为将问题的纬度引入三维导致。我们最终设计了一个基于图像上二维坐标的“距离函数”。这个距离函数对水平方向的变化极为敏感,对竖直方向不敏感。实现了对装甲板经过击打区域的百分百触发。(见 src/pose_estimate/src/PoseSolver.cppantitop 函数)
  4. -
  5. 触发信号的消抖:由于装甲板识别帧率较高,识别过程中可能会在触发边缘反复触发的情况。我们采用和硬件消抖一个原理,设计了一个缓冲区,实现了对触发信号的消抖。(见 src/pose_estimate/src/PoseSolver.cppantitop 函数)
  6. -
  7. 距离增大带来的挑战:随着距离的增大,深度学习模型对装甲板灯条的识别误差也增大,距离解算的误差增大,计算子弹飞行时间的误差增大,弹道的散布增大。上述问题综合下来,可以得出一个结论,随着距离的增大,击打的准确率会呈指数级的下降。实际测试情况也符合理论分析。我们赛季初设计的最远击打为 9 米,我们通过优化识别模型、优化弹道方程、优化弹道最后实现了 7m 的 80% 命中率,达到了我们的设计指标。(见 src/armor_detector/src/Detector.cpp 中识别算法)
  8. -
- -

算法性能、优缺点分析、优化方案 📈

- -

静止靶辅瞄 🎯

- -

静止靶辅瞄的性能实际取决于弹道方程的性能与姿态解算的准确程度。受限于深度学习取点的精度,本赛季 PnP 解算距离误差最大可达 20%,平均为 10% 左右。通过引入均值滤波等手段,一定程度上减少了远距离辅瞄时云台的上下晃动。本赛季静止靶辅瞄实现了在如下指标的 90%命中

- - - - - - - - - - - - - - - - - - - - - - -
参数值 / 单位
自身 roll 倾斜程度(-10,+10)/ °
目标距离(0,10)/m
目标相对高度(-50,50)/cm
- -

目前静止靶辅瞄的适用范围仍然较短,对于超远距离的物体无法识别和辅瞄。此外由于识别的抖动,导致姿态解算存在较大的误差。

- -

下赛季可以着力于两方面进行优化。识别方面采用深度学习 ROI 加传统视觉取灯条中心点的方法,提高识别的精度。远距离辅瞄方面,和雷达结合,利用视觉贴纸,对英雄机器人的赛场位姿进行估计,实现对建筑物的全场的辅助瞄准。

- -

绿灯辅助吊射 🟢

- -

由于对抗中赛场上吊射点位仍然可能在一个小范围内移动,我们需要对这些先验参数进行敏感性分析。

- - - - - - - - - - - - - - - - - - -
参数敏感性( conf=90%)
距离2m
高度60cm
- -

最终该方案因为适应性训练时发现场地内的安全出口的绿灯会造成误识别而没有实际上场。下赛季应当考虑更鲁邦的识别和姿态估计方案。

- -

前哨站辅瞄 🎯

- -

前哨站辅瞄性能指标为前哨站命中率。前哨站命中率受距离影响较大,具体命中率指标如下。

- -

在平地(公路区)或斜坡(小资源岛左侧):

- - - - - - - - - - - - - - - - - - - - - - - - - - -
距离命中率
3m100%
5m92.3%
7m81.5%
9m小于 50%
- -

可以很明显地发现,前哨站辅瞄的性能随着距离的增大显著下降。物理建模分析可知,击打距离与击打命中率是指数级的反比关系。经过我们的不断调优,我们最终实现了在核心击打区域,即公路区域内的极高命中率。经统计,实战 命中率达到了91%(排除因发弹量为负造成的尿弹和前哨站已击毁后的额外击打)。实战击毁前哨站的时间最快为 倒计时6分28秒。实战从落位后到击毁前哨站 最快时间为15秒。实战从拟合结束开始到击毁前哨站 最快为11秒。实战中也尝试了不同距离、不同倾斜角度的辅瞄,均有相当的命中率。

- -

- -

目前前哨站的方案存在的问题是完全摒弃了先验的参数,造成击打前需要有较长的时间( 5-7 秒)进行转速的拟合。下赛季可以着力于结合部分先验的转速知识提高拟合前哨站转速的速度。

- -

致谢 🙏

- -

感谢本赛季狼牙战队视觉组和英雄组的所有成员,感谢他们在这个赛季的努力和付出。

- -

感谢沈阳航空航天大学 TUP 战队以及狼牙战队视觉组的老人们!

- -

联系方式 📇

- -

mail: me@micdz.cn

- -

其他 📚

- -

本赛季本人开发了一个简单的英雄弹道定量分析工具,通过手工标注弹着点,可以计算弹道散布得分,工具尚简陋,希望可以为各校提供一个定量弹道测试的思路。开源链接如下: https://github.com/MicDZ/RM-Ballistic-Analysis

-
- - - - - -
- - - -
- - - - - - -
-
- - -
- - - - - - - diff --git a/preview/pr-23/404.html b/preview/pr-23/404.html deleted file mode 100644 index 4f36e436..00000000 --- a/preview/pr-23/404.html +++ /dev/null @@ -1,529 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -404 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
-

- 没有找到页面

- -

有任何疑问请联系我们的管理员。

- - -
- - -
- - - - - - - diff --git a/preview/pr-23/_scripts/anchors.js b/preview/pr-23/_scripts/anchors.js deleted file mode 100644 index 58daabcb..00000000 --- a/preview/pr-23/_scripts/anchors.js +++ /dev/null @@ -1,47 +0,0 @@ -/* - creates link next to each heading that links to that section. -*/ - -{ - const onLoad = () => { - // for each heading - const headings = document.querySelectorAll( - "h1[id], h2[id], h3[id], h4[id], h5[id], h6[id]" - ); - for (const heading of headings) { - // create anchor link - const link = document.createElement("a"); - link.classList.add("icon", "fa-solid", "fa-link", "anchor"); - link.href = "#" + heading.id; - link.setAttribute("aria-label", "link to this section"); - heading.append(link); - - // if first heading in the section, move id to parent section - if (heading.matches("section > :first-child")) { - heading.parentElement.id = heading.id; - heading.removeAttribute("id"); - } - } - }; - - // scroll to target of url hash - const scrollToTarget = () => { - const id = window.location.hash.replace("#", ""); - const target = document.getElementById(id); - - if (!target) return; - const offset = document.querySelector("header").clientHeight || 0; - window.scrollTo({ - top: target.getBoundingClientRect().top + window.scrollY - offset, - behavior: "smooth", - }); - }; - - // after page loads - window.addEventListener("load", onLoad); - window.addEventListener("load", scrollToTarget); - window.addEventListener("tagsfetched", scrollToTarget); - - // when hash nav happens - window.addEventListener("hashchange", scrollToTarget); -} diff --git a/preview/pr-23/_scripts/dark-mode.js b/preview/pr-23/_scripts/dark-mode.js deleted file mode 100644 index b75b25eb..00000000 --- a/preview/pr-23/_scripts/dark-mode.js +++ /dev/null @@ -1,25 +0,0 @@ -/* - manages light/dark mode. -*/ - -{ - // immediately load saved (or default) mode before page renders - document.documentElement.dataset.dark = - window.localStorage.getItem("dark-mode") ?? "false"; - - const onLoad = () => { - // update toggle button to match loaded mode - document.querySelector(".dark-toggle").checked = - document.documentElement.dataset.dark === "true"; - }; - - // after page loads - window.addEventListener("load", onLoad); - - // when user toggles mode button - window.onDarkToggleChange = (event) => { - const value = event.target.checked; - document.documentElement.dataset.dark = value; - window.localStorage.setItem("dark-mode", value); - }; -} diff --git a/preview/pr-23/_scripts/fetch-tags.js b/preview/pr-23/_scripts/fetch-tags.js deleted file mode 100644 index c843b67f..00000000 --- a/preview/pr-23/_scripts/fetch-tags.js +++ /dev/null @@ -1,67 +0,0 @@ -/* - fetches tags (aka "topics") from a given GitHub repo and adds them to row of - tag buttons. specify repo in data-repo attribute on row. -*/ - -{ - const onLoad = async () => { - // get tag rows with specified repos - const rows = document.querySelectorAll("[data-repo]"); - - // for each repo - for (const row of rows) { - // get props from tag row - const repo = row.dataset.repo.trim(); - const link = row.dataset.link.trim(); - - // get tags from github - if (!repo) continue; - let tags = await fetchTags(repo); - - // filter out tags already present in row - let existing = [...row.querySelectorAll(".tag")].map((tag) => - window.normalizeTag(tag.innerText) - ); - tags = tags.filter((tag) => !existing.includes(normalizeTag(tag))); - - // add tags to row - for (const tag of tags) { - const a = document.createElement("a"); - a.classList.add("tag"); - a.innerHTML = tag; - a.href = `${link}?search="tag: ${tag}"`; - a.dataset.tooltip = `Show items with the tag "${tag}"`; - row.append(a); - } - - // delete tags container if empty - if (!row.innerText.trim()) row.remove(); - } - - // emit "tags done" event for other scripts to listen for - window.dispatchEvent(new Event("tagsfetched")); - }; - - // after page loads - window.addEventListener("load", onLoad); - - // GitHub topics endpoint - const api = "https://api.github.com/repos/REPO/topics"; - const headers = new Headers(); - headers.set("Accept", "application/vnd.github+json"); - - // get tags from GitHub based on repo name - const fetchTags = async (repo) => { - const url = api.replace("REPO", repo); - try { - const response = await (await fetch(url)).json(); - if (response.names) return response.names; - else throw new Error(JSON.stringify(response)); - } catch (error) { - console.groupCollapsed("GitHub fetch tags error"); - console.log(error); - console.groupEnd(); - return []; - } - }; -} diff --git a/preview/pr-23/_scripts/search.js b/preview/pr-23/_scripts/search.js deleted file mode 100644 index 253731bc..00000000 --- a/preview/pr-23/_scripts/search.js +++ /dev/null @@ -1,215 +0,0 @@ -/* - filters elements on page based on url or search box. - syntax: term1 term2 "full phrase 1" "full phrase 2" "tag: tag 1" - match if: all terms AND at least one phrase AND at least one tag -*/ -{ - // elements to filter - const elementSelector = ".card, .citation, .post-excerpt, .citation-simple, .portrait-wrapper"; - // search box element - const searchBoxSelector = ".search-box"; - // results info box element - const infoBoxSelector = ".search-info"; - // tags element - const tagSelector = ".tag"; - - // split search query into terms, phrases, and tags - const splitQuery = (query) => { - // split into parts, preserve quotes - const parts = query.match(/"[^"]*"|\S+/g) || []; - - // bins - const terms = []; - const phrases = []; - const tags = []; - - // put parts into bins - for (let part of parts) { - if (part.startsWith('"')) { - part = part.replaceAll('"', "").trim(); - if (part.startsWith("tag:")) - tags.push(normalizeTag(part.replace(/tag:\s*/, ""))); - else phrases.push(part.toLowerCase()); - } else terms.push(part.toLowerCase()); - } - - return { terms, phrases, tags }; - }; - - // normalize tag string for comparison - window.normalizeTag = (tag) => - tag.trim().toLowerCase().replaceAll(/\s+/g, "-"); - - // get data attribute contents of element and children - const getAttr = (element, attr) => - [element, ...element.querySelectorAll(`[data-${attr}]`)] - .map((element) => element.dataset[attr]) - .join(" "); - - // determine if element should show up in results based on query - const elementMatches = (element, { terms, phrases, tags }) => { - // tag elements within element - const tagElements = [...element.querySelectorAll(".tag")]; - - // check if text content exists in element - const hasText = (string) => - ( - element.innerText + - getAttr(element, "tooltip") + - getAttr(element, "search") - ) - .toLowerCase() - .includes(string); - // check if text matches a tag in element - const hasTag = (string) => - tagElements.some((tag) => normalizeTag(tag.innerText) === string); - - // match logic - return ( - (terms.every(hasText) || !terms.length) && - (phrases.some(hasText) || !phrases.length) && - (tags.some(hasTag) || !tags.length) - ); - }; - - // loop through elements, hide/show based on query, and return results info - const filterElements = (parts) => { - let elements = document.querySelectorAll(elementSelector); - - // results info - let x = 0; - let n = elements.length; - let tags = parts.tags; - - // filter elements - for (const element of elements) { - if (elementMatches(element, parts)) { - element.style.display = ""; - x++; - } else element.style.display = "none"; - } - - return [x, n, tags]; - }; - - // highlight search terms - const highlightMatches = async ({ terms, phrases }) => { - // make sure Mark library available - if (typeof Mark === "undefined") return; - - // reset - new Mark(document.body).unmark(); - - // limit number of highlights to avoid slowdown - let counter = 0; - const filter = () => counter++ < 100; - - // highlight terms and phrases - new Mark(elementSelector) - .mark(terms, { separateWordSearch: true, filter }) - .mark(phrases, { separateWordSearch: false, filter }); - }; - - // update search box based on query - const updateSearchBox = (query = "") => { - const boxes = document.querySelectorAll(searchBoxSelector); - - for (const box of boxes) { - const input = box.querySelector("input"); - const button = box.querySelector("button"); - const icon = box.querySelector("button i"); - input.value = query; - icon.className = input.value.length - ? "icon fa-solid fa-xmark" - : "icon fa-solid fa-magnifying-glass"; - button.disabled = input.value.length ? false : true; - } - }; - - // update info box based on query and results - const updateInfoBox = (query, x, n) => { - const boxes = document.querySelectorAll(infoBoxSelector); - - if (query.trim()) { - // show all info boxes - boxes.forEach((info) => (info.style.display = "")); - - // info template - let info = ""; - info += ` ${n.toLocaleString()} 个结果中的 ${x.toLocaleString()} 个
`; - info += "清除搜索"; - - // set info HTML string - boxes.forEach((el) => (el.innerHTML = info)); - } - // if nothing searched - else { - // hide all info boxes - boxes.forEach((info) => (info.style.display = "none")); - } - }; - - // update tags based on query - const updateTags = (query) => { - const { tags } = splitQuery(query); - document.querySelectorAll(tagSelector).forEach((tag) => { - // set active if tag is in query - if (tags.includes(normalizeTag(tag.innerText))) - tag.setAttribute("data-active", ""); - else tag.removeAttribute("data-active"); - }); - }; - - // run search with query - const runSearch = (query = "") => { - const parts = splitQuery(query); - const [x, n] = filterElements(parts); - updateSearchBox(query); - updateInfoBox(query, x, n); - updateTags(query); - highlightMatches(parts); - }; - - // update url based on query - const updateUrl = (query = "") => { - const url = new URL(window.location); - let params = new URLSearchParams(url.search); - params.set("search", query); - url.search = params.toString(); - window.history.replaceState(null, null, url); - }; - - // search based on url param - const searchFromUrl = () => { - const query = - new URLSearchParams(window.location.search).get("search") || ""; - runSearch(query); - }; - - // return func that runs after delay - const debounce = (callback, delay = 250) => { - let timeout; - return (...args) => { - window.clearTimeout(timeout); - timeout = window.setTimeout(() => callback(...args), delay); - }; - }; - - // when user types into search box - const debouncedRunSearch = debounce(runSearch, 1000); - window.onSearchInput = (target) => { - debouncedRunSearch(target.value); - updateUrl(target.value); - }; - - // when user clears search box with button - window.onSearchClear = () => { - runSearch(); - updateUrl(); - }; - - // after page loads - window.addEventListener("load", searchFromUrl); - // after tags load - window.addEventListener("tagsfetched", searchFromUrl); -} diff --git a/preview/pr-23/_scripts/site-search.js b/preview/pr-23/_scripts/site-search.js deleted file mode 100644 index caff0a61..00000000 --- a/preview/pr-23/_scripts/site-search.js +++ /dev/null @@ -1,14 +0,0 @@ -/* - for site search component. searches site/domain via google. -*/ - -{ - // when user submits site search form/box - window.onSiteSearchSubmit = (event) => { - event.preventDefault(); - const google = "https://www.google.com/search?q=site:"; - const site = window.location.origin; - const query = event.target.elements.query.value; - window.location = google + site + " " + query; - }; -} diff --git a/preview/pr-23/_scripts/table-wrap.js b/preview/pr-23/_scripts/table-wrap.js deleted file mode 100644 index 4c5bddd8..00000000 --- a/preview/pr-23/_scripts/table-wrap.js +++ /dev/null @@ -1,25 +0,0 @@ -/* - put a wrapper around each table to allow scrolling. -*/ - -{ - const onLoad = () => { - // for each top-level table - const tables = document.querySelectorAll("table:not(table table)"); - for (const table of tables) { - // create wrapper with scroll - const wrapper = document.createElement("div"); - wrapper.style.overflowX = "auto"; - - // undo css force-text-wrap - table.style.overflowWrap = "normal"; - - // add wrapper around table - table.parentNode.insertBefore(wrapper, table); - wrapper.appendChild(table); - } - }; - - // after page loads - window.addEventListener("load", onLoad); -} diff --git a/preview/pr-23/_scripts/tooltip.js b/preview/pr-23/_scripts/tooltip.js deleted file mode 100644 index 49eccfc5..00000000 --- a/preview/pr-23/_scripts/tooltip.js +++ /dev/null @@ -1,41 +0,0 @@ -/* - shows a popup of text on hover/focus of any element with the data-tooltip - attribute. -*/ - -{ - const onLoad = () => { - // make sure Tippy library available - if (typeof tippy === "undefined") return; - - // get elements with non-empty tooltips - const elements = [...document.querySelectorAll("[data-tooltip]")].filter( - (element) => element.dataset.tooltip.trim() && !element._tippy - ); - - // add tooltip to elements - tippy(elements, { - content: (element) => element.dataset.tooltip.trim(), - delay: [200, 0], - offset: [0, 20], - allowHTML: true, - interactive: true, - appendTo: () => document.body, - aria: { - content: "describedby", - expanded: null, - }, - onShow: ({ reference, popper }) => { - const dark = reference.closest("[data-dark]")?.dataset.dark; - if (dark === "false") popper.dataset.dark = true; - if (dark === "true") popper.dataset.dark = false; - }, - // onHide: () => false, // debug - }); - }; - - // after page loads - window.addEventListener("load", onLoad); - // after tags load - window.addEventListener("tagsfetched", onLoad); -} diff --git a/preview/pr-23/_styles/-theme.css b/preview/pr-23/_styles/-theme.css deleted file mode 100644 index 3a610a3d..00000000 --- a/preview/pr-23/_styles/-theme.css +++ /dev/null @@ -1,44 +0,0 @@ -[data-dark=false] { - --primary: #0795d9; - --secondary: #7dd3fc; - --text: #000000; - --background: #ffffff; - --background-alt: #fafafa; - --light-gray: #e0e0e0; - --gray: #808080; - --dark-gray: #404040; - --overlay: #00000020; -} - -[data-dark=true] { - --primary: #0795d9; - --secondary: #075985; - --text: #ffffff; - --background: #181818; - --background-alt: #1c1c1c; - --light-gray: #404040; - --gray: #808080; - --dark-gray: #b0b0b0; - --overlay: #ffffff10; -} - -:root { - --title: "Barlow", sans-serif; - --heading: "Barlow", sans-serif; - --body: "Barlow", sans-serif; - --code: "Roboto Mono", monospace; - --large: 1.2rem; - --xl: 1.4rem; - --xxl: 1.6rem; - --thin: 200; - --regular: 400; - --semi-bold: 500; - --bold: 600; - --spacing: 2; - --compact: 1.5; - --rounded: 3px; - --shadow: 0 0 10px 0 var(--overlay); - --transition: 0.2s ease; -} - -/*# sourceMappingURL=-theme.css.map */ \ No newline at end of file diff --git a/preview/pr-23/_styles/-theme.css.map b/preview/pr-23/_styles/-theme.css.map deleted file mode 100644 index 16cb8930..00000000 --- a/preview/pr-23/_styles/-theme.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["-theme.scss"],"names":[],"mappings":"AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAEF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EAEE;EACA;EACA;EACA;EAGA;EACA;EACA;EAGA;EACA;EACA;EACA;EAGA;EACA;EAGA;EACA;EACA","sourcesContent":["// colors\n[data-dark=\"false\"] {\n --primary: #0795d9;\n --secondary: #7dd3fc;\n --text: #000000;\n --background: #ffffff;\n --background-alt: #fafafa;\n --light-gray: #e0e0e0;\n --gray: #808080;\n --dark-gray: #404040;\n --overlay: #00000020;\n}\n[data-dark=\"true\"] {\n --primary: #0795d9;\n --secondary: #075985;\n --text: #ffffff;\n --background: #181818;\n --background-alt: #1c1c1c;\n --light-gray: #404040;\n --gray: #808080;\n --dark-gray: #b0b0b0;\n --overlay: #ffffff10;\n}\n\n:root {\n // font families\n --title: \"Barlow\", sans-serif;\n --heading: \"Barlow\", sans-serif;\n --body: \"Barlow\", sans-serif;\n --code: \"Roboto Mono\", monospace;\n\n // font sizes\n --large: 1.2rem;\n --xl: 1.4rem;\n --xxl: 1.6rem;\n\n // font weights\n --thin: 200;\n --regular: 400;\n --semi-bold: 500;\n --bold: 600;\n\n // text line spacing\n --spacing: 2;\n --compact: 1.5;\n\n // effects\n --rounded: 3px;\n --shadow: 0 0 10px 0 var(--overlay);\n --transition: 0.2s ease;\n}\n"],"file":"-theme.css"} \ No newline at end of file diff --git a/preview/pr-23/_styles/alert.css b/preview/pr-23/_styles/alert.css deleted file mode 100644 index 82bf0165..00000000 --- a/preview/pr-23/_styles/alert.css +++ /dev/null @@ -1,36 +0,0 @@ -.alert { - position: relative; - display: flex; - gap: 20px; - align-items: center; - margin: 20px 0; - padding: 20px; - border-radius: var(--rounded); - overflow: hidden; - text-align: left; - line-height: var(--spacing); -} - -.alert:before { - content: ""; - position: absolute; - inset: 0; - opacity: 0.1; - background: var(--color); - z-index: -1; -} - -.alert > .icon { - color: var(--color); - font-size: var(--large); -} - -.alert-content > :first-child { - margin-top: 0; -} - -.alert-content > :last-child { - margin-bottom: 0; -} - -/*# sourceMappingURL=alert.css.map */ \ No newline at end of file diff --git a/preview/pr-23/_styles/alert.css.map b/preview/pr-23/_styles/alert.css.map deleted file mode 100644 index 4e461a42..00000000 --- a/preview/pr-23/_styles/alert.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["alert.scss"],"names":[],"mappings":"AAAA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE","sourcesContent":[".alert {\n position: relative;\n display: flex;\n gap: 20px;\n align-items: center;\n margin: 20px 0;\n padding: 20px;\n border-radius: var(--rounded);\n overflow: hidden;\n text-align: left;\n line-height: var(--spacing);\n}\n\n.alert:before {\n content: \"\";\n position: absolute;\n inset: 0;\n opacity: 0.1;\n background: var(--color);\n z-index: -1;\n}\n\n.alert > .icon {\n color: var(--color);\n font-size: var(--large);\n}\n\n.alert-content > :first-child {\n margin-top: 0;\n}\n\n.alert-content > :last-child {\n margin-bottom: 0;\n}\n"],"file":"alert.css"} \ No newline at end of file diff --git a/preview/pr-23/_styles/all.css b/preview/pr-23/_styles/all.css deleted file mode 100644 index 65194abf..00000000 --- a/preview/pr-23/_styles/all.css +++ /dev/null @@ -1,10 +0,0 @@ -*, -::before, -::after { - box-sizing: border-box; - -moz-text-size-adjust: none; - -webkit-text-size-adjust: none; - text-size-adjust: none; -} - -/*# sourceMappingURL=all.css.map */ \ No newline at end of file diff --git a/preview/pr-23/_styles/all.css.map b/preview/pr-23/_styles/all.css.map deleted file mode 100644 index 079eb5f9..00000000 --- a/preview/pr-23/_styles/all.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["all.scss"],"names":[],"mappings":"AAAA;AAAA;AAAA;EAGE;EACA;EACA;EACA","sourcesContent":["*,\n::before,\n::after {\n box-sizing: border-box;\n -moz-text-size-adjust: none;\n -webkit-text-size-adjust: none;\n text-size-adjust: none;\n}\n"],"file":"all.css"} \ No newline at end of file diff --git a/preview/pr-23/_styles/anchor.css b/preview/pr-23/_styles/anchor.css deleted file mode 100644 index 3724245d..00000000 --- a/preview/pr-23/_styles/anchor.css +++ /dev/null @@ -1,23 +0,0 @@ -.anchor { - display: inline-block; - position: relative; - width: 0; - margin: 0; - left: 0.5em; - color: var(--primary) !important; - opacity: 0; - font-size: 0.75em; - text-decoration: none; - transition: opacity var(--transition), color var(--transition); -} - -:hover > .anchor, -.anchor:focus { - opacity: 1; -} - -.anchor:hover { - color: var(--text) !important; -} - -/*# sourceMappingURL=anchor.css.map */ \ No newline at end of file diff --git a/preview/pr-23/_styles/anchor.css.map b/preview/pr-23/_styles/anchor.css.map deleted file mode 100644 index 2fc8d7b1..00000000 --- a/preview/pr-23/_styles/anchor.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["anchor.scss"],"names":[],"mappings":"AAAA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;AAAA;EAEE;;;AAGF;EACE","sourcesContent":[".anchor {\n display: inline-block;\n position: relative;\n width: 0;\n margin: 0;\n left: 0.5em;\n color: var(--primary) !important;\n opacity: 0;\n font-size: 0.75em;\n text-decoration: none;\n transition: opacity var(--transition), color var(--transition);\n}\n\n:hover > .anchor,\n.anchor:focus {\n opacity: 1;\n}\n\n.anchor:hover {\n color: var(--text) !important;\n}\n"],"file":"anchor.css"} \ No newline at end of file diff --git a/preview/pr-23/_styles/background.css b/preview/pr-23/_styles/background.css deleted file mode 100644 index ceaed87e..00000000 --- a/preview/pr-23/_styles/background.css +++ /dev/null @@ -1,41 +0,0 @@ -@charset "UTF-8"; -.background { - position: relative; - background: var(--background); - color: var(--text); - z-index: 1; -} - -.background:before { - content: ""; - position: absolute; - inset: 0; - background-image: var(--image); - background-size: cover; - background-repeat: no-repeat; - background-position: 50% 50%; - opacity: 0.25; - z-index: -1; -} - -.background-video { - position: absolute; - top: 0; - left: 0; - width: 100%; - height: 100%; - object-fit: cover; - z-index: -2; /* 确保视频在其他内容的背景层 */ -} - -.overlay { - position: absolute; - top: 0; - left: 0; - width: 100%; - height: 100%; - background-color: rgba(0, 0, 0, 0.3); /* 黑色半透明遮罩,0.5为透明度 */ - z-index: -1; /* 确保遮罩层位于视频前面 */ -} - -/*# sourceMappingURL=background.css.map */ \ No newline at end of file diff --git a/preview/pr-23/_styles/background.css.map b/preview/pr-23/_styles/background.css.map deleted file mode 100644 index 9e1a84a6..00000000 --- a/preview/pr-23/_styles/background.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["background.scss"],"names":[],"mappings":";AAAA;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA","sourcesContent":[".background {\n position: relative;\n background: var(--background);\n color: var(--text);\n z-index: 1;\n}\n\n.background:before {\n content: \"\";\n position: absolute;\n inset: 0;\n background-image: var(--image);\n background-size: cover;\n background-repeat: no-repeat;\n background-position: 50% 50%;\n opacity: 0.25;\n z-index: -1;\n}\n\n.background-video {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n object-fit: cover;\n z-index: -2; /* 确保视频在其他内容的背景层 */\n\n}\n\n.overlay {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background-color: rgba(0, 0, 0, 0.3); /* 黑色半透明遮罩,0.5为透明度 */\n z-index: -1; /* 确保遮罩层位于视频前面 */\n}\n\n"],"file":"background.css"} \ No newline at end of file diff --git a/preview/pr-23/_styles/body.css b/preview/pr-23/_styles/body.css deleted file mode 100644 index 35145d6e..00000000 --- a/preview/pr-23/_styles/body.css +++ /dev/null @@ -1,14 +0,0 @@ -body { - display: flex; - flex-direction: column; - margin: 0; - padding: 0; - min-height: 100vh; - background: var(--background); - color: var(--text); - font-family: var(--body); - text-align: center; - line-height: var(--compact); -} - -/*# sourceMappingURL=body.css.map */ \ No newline at end of file diff --git a/preview/pr-23/_styles/body.css.map b/preview/pr-23/_styles/body.css.map deleted file mode 100644 index d03b64e7..00000000 --- a/preview/pr-23/_styles/body.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["body.scss"],"names":[],"mappings":"AAAA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA","sourcesContent":["body {\n display: flex;\n flex-direction: column;\n margin: 0;\n padding: 0;\n min-height: 100vh;\n background: var(--background);\n color: var(--text);\n font-family: var(--body);\n text-align: center;\n line-height: var(--compact);\n}\n"],"file":"body.css"} \ No newline at end of file diff --git a/preview/pr-23/_styles/bold.css b/preview/pr-23/_styles/bold.css deleted file mode 100644 index 94a711f1..00000000 --- a/preview/pr-23/_styles/bold.css +++ /dev/null @@ -1,6 +0,0 @@ -b, -strong { - font-weight: var(--bold); -} - -/*# sourceMappingURL=bold.css.map */ \ No newline at end of file diff --git a/preview/pr-23/_styles/bold.css.map b/preview/pr-23/_styles/bold.css.map deleted file mode 100644 index 57012fd4..00000000 --- a/preview/pr-23/_styles/bold.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["bold.scss"],"names":[],"mappings":"AAAA;AAAA;EAEE","sourcesContent":["b,\nstrong {\n font-weight: var(--bold);\n}\n"],"file":"bold.css"} \ No newline at end of file diff --git a/preview/pr-23/_styles/button.css b/preview/pr-23/_styles/button.css deleted file mode 100644 index ab3f650e..00000000 --- a/preview/pr-23/_styles/button.css +++ /dev/null @@ -1,49 +0,0 @@ -button { - cursor: pointer; -} - -.button-wrapper { - display: contents; -} - -.button { - display: inline-flex; - justify-content: center; - align-items: center; - gap: 10px; - max-width: calc(100% - 5px - 5px); - margin: 5px; - padding: 10px 15px; - border: none; - border-radius: var(--rounded); - background: var(--primary); - color: var(--background); - text-align: center; - font: inherit; - font-family: var(--heading); - font-weight: var(--semi-bold); - text-decoration: none; - vertical-align: middle; - appearance: none; - transition: background var(--transition), color var(--transition); -} - -.button:hover { - background: var(--text); - color: var(--background); -} - -.button[data-style=bare] { - padding: 5px; - background: none; - color: var(--primary); -} -.button[data-style=bare]:hover { - color: var(--text); -} - -.button[data-flip] { - flex-direction: row-reverse; -} - -/*# sourceMappingURL=button.css.map */ \ No newline at end of file diff --git a/preview/pr-23/_styles/button.css.map b/preview/pr-23/_styles/button.css.map deleted file mode 100644 index 5fee0dd3..00000000 --- a/preview/pr-23/_styles/button.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["button.scss"],"names":[],"mappings":"AAAA;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;AAEA;EACE;;;AAIJ;EACE","sourcesContent":["button {\n cursor: pointer;\n}\n\n.button-wrapper {\n display: contents;\n}\n\n.button {\n display: inline-flex;\n justify-content: center;\n align-items: center;\n gap: 10px;\n max-width: calc(100% - 5px - 5px);\n margin: 5px;\n padding: 10px 15px;\n border: none;\n border-radius: var(--rounded);\n background: var(--primary);\n color: var(--background);\n text-align: center;\n font: inherit;\n font-family: var(--heading);\n font-weight: var(--semi-bold);\n text-decoration: none;\n vertical-align: middle;\n appearance: none;\n transition: background var(--transition), color var(--transition);\n}\n\n.button:hover {\n background: var(--text);\n color: var(--background);\n}\n\n.button[data-style=\"bare\"] {\n padding: 5px;\n background: none;\n color: var(--primary);\n\n &:hover {\n color: var(--text);\n }\n}\n\n.button[data-flip] {\n flex-direction: row-reverse;\n}\n"],"file":"button.css"} \ No newline at end of file diff --git a/preview/pr-23/_styles/card.css b/preview/pr-23/_styles/card.css deleted file mode 100644 index 1b37a12f..00000000 --- a/preview/pr-23/_styles/card.css +++ /dev/null @@ -1,50 +0,0 @@ -.card { - display: inline-flex; - justify-content: stretch; - align-items: center; - flex-direction: column; - width: 350px; - max-width: calc(100% - 20px - 20px); - margin: 20px; - background: var(--background); - border-radius: var(--rounded); - overflow: hidden; - box-shadow: var(--shadow); - vertical-align: top; -} - -.card[data-style=small] { - width: 250px; -} - -.card-image img { - aspect-ratio: 3/2; - object-fit: cover; - width: 100%; -} - -.card-text { - display: inline-flex; - justify-content: flex-start; - align-items: center; - flex-direction: column; - gap: 20px; - max-width: 100%; - padding: 20px; -} - -.card-text > * { - margin: 0 !important; -} - -.card-title { - font-family: var(--heading); - font-weight: var(--semi-bold); -} - -.card-subtitle { - margin-top: -10px !important; - font-style: italic; -} - -/*# sourceMappingURL=card.css.map */ \ No newline at end of file diff --git a/preview/pr-23/_styles/card.css.map b/preview/pr-23/_styles/card.css.map deleted file mode 100644 index 393b7a3a..00000000 --- a/preview/pr-23/_styles/card.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["card.scss"],"names":[],"mappings":"AAAA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAIF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA","sourcesContent":[".card {\n display: inline-flex;\n justify-content: stretch;\n align-items: center;\n flex-direction: column;\n width: 350px;\n max-width: calc(100% - 20px - 20px);\n margin: 20px;\n background: var(--background);\n border-radius: var(--rounded);\n overflow: hidden;\n box-shadow: var(--shadow);\n vertical-align: top;\n}\n\n.card[data-style=\"small\"] {\n width: 250px;\n}\n\n.card-image img {\n aspect-ratio: 3 / 2;\n object-fit: cover;\n width: 100%;\n // box-shadow: var(--shadow);\n}\n\n.card-text {\n display: inline-flex;\n justify-content: flex-start;\n align-items: center;\n flex-direction: column;\n gap: 20px;\n max-width: 100%;\n padding: 20px;\n}\n\n.card-text > * {\n margin: 0 !important;\n}\n\n.card-title {\n font-family: var(--heading);\n font-weight: var(--semi-bold);\n}\n\n.card-subtitle {\n margin-top: -10px !important;\n font-style: italic;\n}\n"],"file":"card.css"} \ No newline at end of file diff --git a/preview/pr-23/_styles/checkbox.css b/preview/pr-23/_styles/checkbox.css deleted file mode 100644 index 8c77dc53..00000000 --- a/preview/pr-23/_styles/checkbox.css +++ /dev/null @@ -1,5 +0,0 @@ -input[type=checkbox] { - cursor: pointer; -} - -/*# sourceMappingURL=checkbox.css.map */ \ No newline at end of file diff --git a/preview/pr-23/_styles/checkbox.css.map b/preview/pr-23/_styles/checkbox.css.map deleted file mode 100644 index 90fb4932..00000000 --- a/preview/pr-23/_styles/checkbox.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["checkbox.scss"],"names":[],"mappings":"AAAA;EACE","sourcesContent":["input[type=\"checkbox\"] {\n cursor: pointer;\n}\n"],"file":"checkbox.css"} \ No newline at end of file diff --git a/preview/pr-23/_styles/citation.css b/preview/pr-23/_styles/citation.css deleted file mode 100644 index 3b42cf12..00000000 --- a/preview/pr-23/_styles/citation.css +++ /dev/null @@ -1,151 +0,0 @@ -@charset "UTF-8"; -.citation { - display: flex; - flex-direction: row; /* 保持水平排列 */ - flex-wrap: wrap; /* 允许换行 */ - gap: 2%; - justify-content: center; - align-items: center; - margin: 20px 0; - border-radius: var(--rounded); - background: var(--background); - overflow: hidden; - box-shadow: var(--shadow); -} - -.citation-simple { - display: flex; - flex-direction: row; - justify-content: center; - align-items: center; -} - -.citation-image { - position: relative; - fill: antiquewhite; -} - -.citation-image img { - position: absolute; - inset: 0; - width: 100%; - height: 100%; - object-fit: contain; -} - -.citation-text { - display: flex; - gap: 10px; - height: min-content; - width: 80%; - margin-bottom: 20px; - margin-top: 20px; - text-align: left; - flex-direction: column; - overflow-wrap: break-word; - z-index: 0; -} - -.citation-text-simple .align-right { - margin-left: auto; /* 使该子元素靠右对齐 */ -} - -.citation-text-simple { - display: flex; - gap: 10px; - height: min-content; - width: 90%; - margin-bottom: 10px; - text-align: left; - flex-direction: row; - overflow-wrap: break-word; - z-index: 0; -} -.citation-text-simple .citation-authors { - min-width: 20%; -} -.citation-text-simple .citation-title { - min-width: 20%; -} -.citation-text-simple .citation-info { - min-width: 10%; -} -.citation-text-simple .citation-description { - min-width: 50%; -} - -.citation-title, -.citation-authors, -.citation-details, -.citation-info .citation-description { - max-width: 100%; -} - -.citation-authors { - display: flex; - flex-wrap: wrap; - justify-content: flex-end; - gap: 10px; - min-width: 20%; -} - -.citation-title { - font-weight: var(--semi-bold); - font-size: large; - text-align: center; -} - -.citation-info { - font-weight: var(--semi-bold); - font-size: medium; - text-align: right; -} - -.citation-text > .icon { - position: absolute; - right: 20px; - color: var(--light-gray); - opacity: 0.5; - font-size: 30px; - z-index: -1; -} - -.citation-publisher { - text-transform: capitalize; -} - -.citation-description { - color: var(--gray); -} - -.citation-buttons { - display: flex; - flex-wrap: wrap; - gap: 10px; -} - -.citation-buttons .button { - margin: 0; -} - -.citation-text > .tags { - display: inline-flex; - justify-content: flex-start; - margin: 0; -} - -@container (max-width: 800px) { - .citation { - flex-direction: column; - } - .citation-image { - width: unset; - } -} -.center { - display: flex; - justify-content: center; - align-items: center; -} - -/*# sourceMappingURL=citation.css.map */ \ No newline at end of file diff --git a/preview/pr-23/_styles/citation.css.map b/preview/pr-23/_styles/citation.css.map deleted file mode 100644 index bebad204..00000000 --- a/preview/pr-23/_styles/citation.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["citation.scss"],"names":[],"mappings":";AAOA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAEF;EACE;EACA;EACA;EACA;;;AAIF;EACE;EAEA;;;AAIF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAEF;EACE;;;AAEF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;;AAEF;EACE;;AAEF;EACE;;AAEF;EACE;;;AAIJ;AAAA;AAAA;AAAA;EAKE;;;AAEF;EAEE;EACA;EACA;EACA;EAEA;;;AAEF;EACE;EACA;EACA;;;AAEF;EACE;EACA;EACA;;;AAIF;EACE;EAEA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;IACE;;EAGF;IACE;;;AAIJ;EACE;EACA;EACA","sourcesContent":["$thumb-size: 180px;\n$wrap: 800px;\n\n.citation-container {\n\n}\n\n.citation {\n display: flex;\n flex-direction: row; /* 保持水平排列 */\n flex-wrap: wrap; /* 允许换行 */\n gap: 2%;\n justify-content: center;\n align-items: center;\n margin: 20px 0;\n border-radius: var(--rounded);\n background: var(--background);\n overflow: hidden;\n box-shadow: var(--shadow);\n}\n.citation-simple {\n display: flex;\n flex-direction: row;\n justify-content: center;\n align-items: center;\n\n}\n\n.citation-image {\n position: relative;\n\n fill: antiquewhite;\n // box-shadow: var(--shadow);\n}\n\n.citation-image img {\n position: absolute;\n inset: 0;\n width: 100%;\n height: 100%;\n object-fit: contain;\n}\n\n.citation-text {\n display: flex;\n gap: 10px;\n height: min-content;\n width: 80%;\n margin-bottom: 20px;\n margin-top: 20px;\n text-align: left;\n flex-direction: column;\n overflow-wrap: break-word;\n z-index: 0;\n}\n.citation-text-simple .align-right {\n margin-left: auto; /* 使该子元素靠右对齐 */\n}\n.citation-text-simple {\n display: flex;\n gap: 10px;\n height: min-content;\n width: 90%;\n margin-bottom: 10px;\n text-align: left;\n flex-direction: row;\n overflow-wrap: break-word;\n z-index: 0;\n .citation-authors {\n min-width: 20%;\n }\n .citation-title {\n min-width: 20%;\n }\n .citation-info {\n min-width: 10%;\n }\n .citation-description {\n min-width: 50%;\n }\n}\n\n.citation-title,\n.citation-authors,\n.citation-details,\n.citation-info\n.citation-description {\n max-width: 100%;\n}\n.citation-authors{\n // 向右\n display: flex;\n flex-wrap: wrap;\n justify-content: flex-end;\n gap: 10px;\n\n min-width: 20%;\n}\n.citation-title {\n font-weight: var(--semi-bold);\n font-size: large;\n text-align: center;\n}\n.citation-info {\n font-weight: var(--semi-bold);\n font-size: medium;\n text-align: right;\n\n}\n\n.citation-text > .icon {\n position: absolute;\n\n right: 20px;\n color: var(--light-gray);\n opacity: 0.5;\n font-size: 30px;\n z-index: -1;\n}\n\n.citation-publisher {\n text-transform: capitalize;\n}\n\n.citation-description {\n color: var(--gray);\n}\n\n.citation-buttons {\n display: flex;\n flex-wrap: wrap;\n gap: 10px;\n}\n\n.citation-buttons .button {\n margin: 0;\n}\n\n.citation-text > .tags {\n display: inline-flex;\n justify-content: flex-start;\n margin: 0;\n}\n\n@container (max-width: #{$wrap}) {\n .citation {\n flex-direction: column;\n }\n\n .citation-image {\n width: unset;\n\n }\n}\n.center {\n display: flex;\n justify-content: center;\n align-items: center;\n}\n"],"file":"citation.css"} \ No newline at end of file diff --git a/preview/pr-23/_styles/code.css b/preview/pr-23/_styles/code.css deleted file mode 100644 index 8912ad31..00000000 --- a/preview/pr-23/_styles/code.css +++ /dev/null @@ -1,33 +0,0 @@ -pre, -code, -pre *, -code * { - font-family: var(--code); -} - -code.highlighter-rouge { - padding: 2px 6px; - background: var(--light-gray); - border-radius: var(--rounded); -} - -div.highlighter-rouge { - width: 100%; - margin: 40px 0; - border-radius: var(--rounded); - overflow-x: auto; - overflow-y: auto; - text-align: left; -} -div.highlighter-rouge div.highlight { - display: contents; -} -div.highlighter-rouge div.highlight pre.highlight { - width: fit-content; - min-width: 100%; - margin: 0; - padding: 20px; - color: var(--white); -} - -/*# sourceMappingURL=code.css.map */ \ No newline at end of file diff --git a/preview/pr-23/_styles/code.css.map b/preview/pr-23/_styles/code.css.map deleted file mode 100644 index 8f447176..00000000 --- a/preview/pr-23/_styles/code.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["code.scss"],"names":[],"mappings":"AAAA;AAAA;AAAA;AAAA;EAIE;;;AAIF;EACE;EACA;EACA;;;AAIF;EACE;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAEA;EACE;EACA;EACA;EACA;EACA","sourcesContent":["pre,\ncode,\npre *,\ncode * {\n font-family: var(--code);\n}\n\n// inline code\ncode.highlighter-rouge {\n padding: 2px 6px;\n background: var(--light-gray);\n border-radius: var(--rounded);\n}\n\n// code block\ndiv.highlighter-rouge {\n width: 100%;\n margin: 40px 0;\n border-radius: var(--rounded);\n overflow-x: auto;\n overflow-y: auto;\n text-align: left;\n\n div.highlight {\n display: contents;\n\n pre.highlight {\n width: fit-content;\n min-width: 100%;\n margin: 0;\n padding: 20px;\n color: var(--white);\n }\n }\n}\n"],"file":"code.css"} \ No newline at end of file diff --git a/preview/pr-23/_styles/cols.css b/preview/pr-23/_styles/cols.css deleted file mode 100644 index b15b095b..00000000 --- a/preview/pr-23/_styles/cols.css +++ /dev/null @@ -1,34 +0,0 @@ -.cols { - display: grid; - --repeat: min(3, var(--cols)); - grid-template-columns: repeat(var(--repeat), 1fr); - align-items: flex-start; - gap: 40px; - margin: 40px 0; -} - -.cols > * { - min-width: 0; - min-height: 0; -} - -.cols > div > :first-child { - margin-top: 0 !important; -} - -.cols > div > :last-child { - margin-bottom: 0 !important; -} - -@media (max-width: 750px) { - .cols { - --repeat: min(2, var(--cols)); - } -} -@media (max-width: 500px) { - .cols { - --repeat: min(1, var(--cols)); - } -} - -/*# sourceMappingURL=cols.css.map */ \ No newline at end of file diff --git a/preview/pr-23/_styles/cols.css.map b/preview/pr-23/_styles/cols.css.map deleted file mode 100644 index 2c44d543..00000000 --- a/preview/pr-23/_styles/cols.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["cols.scss"],"names":[],"mappings":"AAGA;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;IACE;;;AAIJ;EACE;IACE","sourcesContent":["$two: 750px;\n$one: 500px;\n\n.cols {\n display: grid;\n --repeat: min(3, var(--cols));\n grid-template-columns: repeat(var(--repeat), 1fr);\n align-items: flex-start;\n gap: 40px;\n margin: 40px 0;\n}\n\n.cols > * {\n min-width: 0;\n min-height: 0;\n}\n\n.cols > div > :first-child {\n margin-top: 0 !important;\n}\n\n.cols > div > :last-child {\n margin-bottom: 0 !important;\n}\n\n@media (max-width: $two) {\n .cols {\n --repeat: min(2, var(--cols));\n }\n}\n\n@media (max-width: $one) {\n .cols {\n --repeat: min(1, var(--cols));\n }\n}\n"],"file":"cols.css"} \ No newline at end of file diff --git a/preview/pr-23/_styles/dark-toggle.css b/preview/pr-23/_styles/dark-toggle.css deleted file mode 100644 index 87065b78..00000000 --- a/preview/pr-23/_styles/dark-toggle.css +++ /dev/null @@ -1,30 +0,0 @@ -.dark-toggle { - position: relative; - width: 40px; - height: 25px; - margin: 0; - border-radius: 999px; - background: var(--primary); - appearance: none; - transition: background var(--transition); -} - -.dark-toggle:after { - content: "\f185"; - position: absolute; - left: 12px; - top: 50%; - color: var(--text); - font-size: 15px; - font-family: "Font Awesome 6 Free"; - font-weight: 900; - transform: translate(-50%, -50%); - transition: left var(--transition); -} - -.dark-toggle:checked:after { - content: "\f186"; - left: calc(100% - 12px); -} - -/*# sourceMappingURL=dark-toggle.css.map */ \ No newline at end of file diff --git a/preview/pr-23/_styles/dark-toggle.css.map b/preview/pr-23/_styles/dark-toggle.css.map deleted file mode 100644 index 496aa7b5..00000000 --- a/preview/pr-23/_styles/dark-toggle.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["dark-toggle.scss"],"names":[],"mappings":"AAAA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA","sourcesContent":[".dark-toggle {\n position: relative;\n width: 40px;\n height: 25px;\n margin: 0;\n border-radius: 999px;\n background: var(--primary);\n appearance: none;\n transition: background var(--transition);\n}\n\n.dark-toggle:after {\n content: \"\\f185\";\n position: absolute;\n left: 12px;\n top: 50%;\n color: var(--text);\n font-size: 15px;\n font-family: \"Font Awesome 6 Free\";\n font-weight: 900;\n transform: translate(-50%, -50%);\n transition: left var(--transition);\n}\n\n.dark-toggle:checked:after {\n content: \"\\f186\";\n left: calc(100% - 12px);\n}\n"],"file":"dark-toggle.css"} \ No newline at end of file diff --git a/preview/pr-23/_styles/feature.css b/preview/pr-23/_styles/feature.css deleted file mode 100644 index 7f7e0120..00000000 --- a/preview/pr-23/_styles/feature.css +++ /dev/null @@ -1,49 +0,0 @@ -.feature { - display: flex; - justify-content: center; - align-items: center; - gap: 40px; - margin: 40px 0; -} - -.feature-image { - flex-shrink: 0; - width: 40%; - aspect-ratio: 3/2; - border-radius: var(--rounded); - overflow: hidden; - box-shadow: var(--shadow); -} - -.feature-image img { - width: 100%; - height: 100%; - object-fit: cover; -} - -.feature-text { - flex-grow: 1; -} - -.feature-title { - font-size: var(--large); - text-align: center; - font-family: var(--heading); - font-weight: var(--semi-bold); -} - -.feature[data-flip] { - flex-direction: row-reverse; -} - -@media (max-width: 800px) { - .feature { - flex-direction: column !important; - } - .feature-image { - width: 100%; - max-width: 400px; - } -} - -/*# sourceMappingURL=feature.css.map */ \ No newline at end of file diff --git a/preview/pr-23/_styles/feature.css.map b/preview/pr-23/_styles/feature.css.map deleted file mode 100644 index 1a2cdac6..00000000 --- a/preview/pr-23/_styles/feature.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["feature.scss"],"names":[],"mappings":"AAEA;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;IACE;;EAGF;IACE;IACA","sourcesContent":["$wrap: 800px;\n\n.feature {\n display: flex;\n justify-content: center;\n align-items: center;\n gap: 40px;\n margin: 40px 0;\n}\n\n.feature-image {\n flex-shrink: 0;\n width: 40%;\n aspect-ratio: 3 / 2;\n border-radius: var(--rounded);\n overflow: hidden;\n box-shadow: var(--shadow);\n}\n\n.feature-image img {\n width: 100%;\n height: 100%;\n object-fit: cover;\n}\n\n.feature-text {\n flex-grow: 1;\n}\n\n.feature-title {\n font-size: var(--large);\n text-align: center;\n font-family: var(--heading);\n font-weight: var(--semi-bold);\n}\n\n.feature[data-flip] {\n flex-direction: row-reverse;\n}\n\n@media (max-width: $wrap) {\n .feature {\n flex-direction: column !important;\n }\n\n .feature-image {\n width: 100%;\n max-width: calc($wrap / 2);\n }\n}\n"],"file":"feature.css"} \ No newline at end of file diff --git a/preview/pr-23/_styles/figure.css b/preview/pr-23/_styles/figure.css deleted file mode 100644 index 95589387..00000000 --- a/preview/pr-23/_styles/figure.css +++ /dev/null @@ -1,25 +0,0 @@ -.figure { - display: flex; - justify-content: center; - align-items: center; - flex-direction: column; - gap: 10px; - margin: 40px 0; -} - -.figure-image { - display: contents; -} - -.figure-image img { - border-radius: var(--rounded); - overflow: hidden; - box-shadow: var(--shadow); -} - -.figure-caption { - font-style: italic; - text-align: center; -} - -/*# sourceMappingURL=figure.css.map */ \ No newline at end of file diff --git a/preview/pr-23/_styles/figure.css.map b/preview/pr-23/_styles/figure.css.map deleted file mode 100644 index 4d62fcf1..00000000 --- a/preview/pr-23/_styles/figure.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["figure.scss"],"names":[],"mappings":"AAAA;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA","sourcesContent":[".figure {\n display: flex;\n justify-content: center;\n align-items: center;\n flex-direction: column;\n gap: 10px;\n margin: 40px 0;\n}\n\n.figure-image {\n display: contents;\n}\n\n.figure-image img {\n border-radius: var(--rounded);\n overflow: hidden;\n box-shadow: var(--shadow);\n}\n\n.figure-caption {\n font-style: italic;\n text-align: center;\n}\n"],"file":"figure.css"} \ No newline at end of file diff --git a/preview/pr-23/_styles/float.css b/preview/pr-23/_styles/float.css deleted file mode 100644 index c91b46eb..00000000 --- a/preview/pr-23/_styles/float.css +++ /dev/null @@ -1,35 +0,0 @@ -.float { - margin-bottom: 20px; - max-width: 50%; -} - -.float > * { - margin: 0 !important; -} - -.float:not([data-flip]) { - float: left; - margin-right: 40px; -} - -.float[data-flip] { - float: right; - margin-left: 40px; -} - -.float[data-clear] { - float: unset; - clear: both; - margin: 0; -} - -@media (max-width: 600px) { - .float { - float: unset !important; - clear: both !important; - margin: auto !important; - max-width: unset; - } -} - -/*# sourceMappingURL=float.css.map */ \ No newline at end of file diff --git a/preview/pr-23/_styles/float.css.map b/preview/pr-23/_styles/float.css.map deleted file mode 100644 index 42c53e0b..00000000 --- a/preview/pr-23/_styles/float.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["float.scss"],"names":[],"mappings":"AAEA;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;IACE;IACA;IACA;IACA","sourcesContent":["$wrap: 600px;\n\n.float {\n margin-bottom: 20px;\n max-width: 50%;\n}\n\n.float > * {\n margin: 0 !important;\n}\n\n.float:not([data-flip]) {\n float: left;\n margin-right: 40px;\n}\n\n.float[data-flip] {\n float: right;\n margin-left: 40px;\n}\n\n.float[data-clear] {\n float: unset;\n clear: both;\n margin: 0;\n}\n\n@media (max-width: $wrap) {\n .float {\n float: unset !important;\n clear: both !important;\n margin: auto !important;\n max-width: unset;\n }\n}\n"],"file":"float.css"} \ No newline at end of file diff --git a/preview/pr-23/_styles/font.css b/preview/pr-23/_styles/font.css deleted file mode 100644 index c40e1559..00000000 --- a/preview/pr-23/_styles/font.css +++ /dev/null @@ -1,3 +0,0 @@ -@font-face {} - -/*# sourceMappingURL=font.css.map */ \ No newline at end of file diff --git a/preview/pr-23/_styles/font.css.map b/preview/pr-23/_styles/font.css.map deleted file mode 100644 index e1d56c04..00000000 --- a/preview/pr-23/_styles/font.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["font.scss"],"names":[],"mappings":"AAAA","sourcesContent":["@font-face {\n}\n"],"file":"font.css"} \ No newline at end of file diff --git a/preview/pr-23/_styles/footer.css b/preview/pr-23/_styles/footer.css deleted file mode 100644 index a85b907f..00000000 --- a/preview/pr-23/_styles/footer.css +++ /dev/null @@ -1,24 +0,0 @@ -footer { - display: flex; - justify-content: center; - align-items: center; - flex-direction: column; - gap: 20px; - padding: 40px; - line-height: var(--spacing); - box-shadow: var(--shadow); -} - -footer a { - color: var(--text) !important; -} - -footer a:hover { - color: var(--primary) !important; -} - -footer .icon { - font-size: var(--xl); -} - -/*# sourceMappingURL=footer.css.map */ \ No newline at end of file diff --git a/preview/pr-23/_styles/footer.css.map b/preview/pr-23/_styles/footer.css.map deleted file mode 100644 index 61ae1179..00000000 --- a/preview/pr-23/_styles/footer.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["footer.scss"],"names":[],"mappings":"AAAA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE","sourcesContent":["footer {\n display: flex;\n justify-content: center;\n align-items: center;\n flex-direction: column;\n gap: 20px;\n padding: 40px;\n line-height: var(--spacing);\n box-shadow: var(--shadow);\n}\n\nfooter a {\n color: var(--text) !important;\n}\n\nfooter a:hover {\n color: var(--primary) !important;\n}\n\nfooter .icon {\n font-size: var(--xl);\n}\n"],"file":"footer.css"} \ No newline at end of file diff --git a/preview/pr-23/_styles/form.css b/preview/pr-23/_styles/form.css deleted file mode 100644 index 76114595..00000000 --- a/preview/pr-23/_styles/form.css +++ /dev/null @@ -1,8 +0,0 @@ -form { - display: flex; - justify-content: center; - align-items: center; - gap: 10px; -} - -/*# sourceMappingURL=form.css.map */ \ No newline at end of file diff --git a/preview/pr-23/_styles/form.css.map b/preview/pr-23/_styles/form.css.map deleted file mode 100644 index 65939cb6..00000000 --- a/preview/pr-23/_styles/form.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["form.scss"],"names":[],"mappings":"AAAA;EACE;EACA;EACA;EACA","sourcesContent":["form {\n display: flex;\n justify-content: center;\n align-items: center;\n gap: 10px;\n}\n"],"file":"form.css"} \ No newline at end of file diff --git a/preview/pr-23/_styles/grid.css b/preview/pr-23/_styles/grid.css deleted file mode 100644 index a595ce7b..00000000 --- a/preview/pr-23/_styles/grid.css +++ /dev/null @@ -1,45 +0,0 @@ -.grid { - display: grid; - --repeat: 3; - grid-template-columns: repeat(var(--repeat), 1fr); - justify-content: center; - align-items: flex-start; - gap: 40px; - margin: 40px 0; -} - -.grid > * { - min-width: 0; - min-height: 0; - width: 100%; - margin: 0 !important; -} - -@media (max-width: 750px) { - .grid { - --repeat: 2; - } -} -@media (max-width: 500px) { - .grid { - --repeat: 1; - } -} -.grid[data-style=square] { - align-items: center; -} -.grid[data-style=square] > * { - aspect-ratio: 1/1; -} -.grid[data-style=square] img { - aspect-ratio: 1/1; - object-fit: cover; - max-width: unset; - max-height: unset; -} - -.grid > :where(h1, h2, h3, h4, h5, h6) { - display: none; -} - -/*# sourceMappingURL=grid.css.map */ \ No newline at end of file diff --git a/preview/pr-23/_styles/grid.css.map b/preview/pr-23/_styles/grid.css.map deleted file mode 100644 index 8e00ee1c..00000000 --- a/preview/pr-23/_styles/grid.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["grid.scss"],"names":[],"mappings":"AAGA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EAEA;;;AAGF;EACE;IACE;;;AAIJ;EACE;IACE;;;AAIJ;EACE;;AAEA;EACE;;AAGF;EACE;EACA;EACA;EACA;;;AAIJ;EACE","sourcesContent":["$two: 750px;\n$one: 500px;\n\n.grid {\n display: grid;\n --repeat: 3;\n grid-template-columns: repeat(var(--repeat), 1fr);\n justify-content: center;\n align-items: flex-start;\n gap: 40px;\n margin: 40px 0;\n}\n\n.grid > * {\n min-width: 0;\n min-height: 0;\n width: 100%;\n // max-height: 50vh;\n margin: 0 !important;\n}\n\n@media (max-width: $two) {\n .grid {\n --repeat: 2;\n }\n}\n\n@media (max-width: $one) {\n .grid {\n --repeat: 1;\n }\n}\n\n.grid[data-style=\"square\"] {\n align-items: center;\n\n & > * {\n aspect-ratio: 1 / 1;\n }\n\n & img {\n aspect-ratio: 1 / 1;\n object-fit: cover;\n max-width: unset;\n max-height: unset;\n }\n}\n\n.grid > :where(h1, h2, h3, h4, h5, h6) {\n display: none;\n}\n"],"file":"grid.css"} \ No newline at end of file diff --git a/preview/pr-23/_styles/header.css b/preview/pr-23/_styles/header.css deleted file mode 100644 index c9d1ce6e..00000000 --- a/preview/pr-23/_styles/header.css +++ /dev/null @@ -1,145 +0,0 @@ -header { - display: flex; - justify-content: space-between; - align-items: center; - flex-wrap: wrap; - gap: 20px; - padding: 20px; - box-shadow: var(--shadow); - position: sticky !important; - top: 0; - z-index: 10 !important; -} - -header a { - color: var(--text); - text-decoration: none; -} - -.home { - display: flex; - justify-content: flex-start; - align-items: center; - gap: 10px; - flex-basis: 0; - flex-grow: 1; - max-width: 100%; -} - -.logo { - height: 40px; -} - -.logo > * { - height: 100%; -} - -.title-text { - display: flex; - justify-content: flex-start; - align-items: baseline; - flex-wrap: wrap; - gap: 5px; - min-width: 0; - font-family: var(--title); - text-align: left; -} - -.title { - font-size: var(--large); -} - -.subtitle { - opacity: 0.65; - font-weight: var(--thin); -} - -.nav-toggle { - display: none; - position: relative; - width: 30px; - height: 30px; - margin: 0; - color: var(--text); - appearance: none; - transition: background var(--transition); -} - -.nav-toggle:after { - content: "\f0c9"; - position: absolute; - left: 50%; - top: 50%; - color: var(--text); - font-size: 15px; - font-family: "Font Awesome 6 Free"; - font-weight: 900; - transform: translate(-50%, -50%); -} - -.nav-toggle:checked:after { - content: "\f00d"; -} - -nav { - display: flex; - justify-content: center; - align-items: center; - flex-wrap: wrap; - gap: 10px; - font-family: var(--heading); - text-transform: uppercase; -} - -nav > a { - padding: 5px; -} - -nav > a:hover { - color: var(--primary); -} - -@media (max-width: 700px) { - header:not([data-big]) { - justify-content: flex-end; - } - header:not([data-big]) .nav-toggle { - display: flex; - } - header:not([data-big]) .nav-toggle:not(:checked) + nav { - display: none; - } - header:not([data-big]) nav { - align-items: flex-end; - flex-direction: column; - width: 100%; - } -} - -header[data-big] { - justify-content: center; - align-items: center; - flex-direction: column; - padding: 12% 20px; - top: unset; -} -header[data-big] .home { - flex-direction: column; - flex-grow: 0; -} -header[data-big] .logo { - height: 80px; -} -header[data-big] .title-text { - flex-direction: column; - align-items: center; - text-align: center; -} -header[data-big] .title { - font-size: var(--xxl); -} -header[data-big] .subtitle { - font-size: var(--large); -} - -/*# sourceMappingURL=header.css.map */ \ No newline at end of file diff --git a/preview/pr-23/_styles/header.css.map b/preview/pr-23/_styles/header.css.map deleted file mode 100644 index aee7052a..00000000 --- a/preview/pr-23/_styles/header.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["header.scss"],"names":[],"mappings":"AAMA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EAGE;EACA;EACA;;;AAIJ;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE,QArCK;;;AAwCP;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAIA;EADF;IAEI;;EAEA;IACE;;EAGF;IACE;;EAGF;IACE;IACA;IACA;;;;AAKN;EACE;EACA;EACA;EACA;EAGE;;AAGF;EACE;EACA;;AAGF;EACE,QAlJO;;AAqJT;EACE;EACA;EACA;;AAGF;EACE;;AAGF;EACE","sourcesContent":["$logo-big: 80px;\n$logo: 40px;\n$big-padding: 12%;\n$collapse: 700px;\n$sticky: true;\n\nheader {\n display: flex;\n justify-content: space-between;\n align-items: center;\n flex-wrap: wrap;\n gap: 20px;\n padding: 20px;\n box-shadow: var(--shadow);\n\n @if $sticky {\n position: sticky !important;\n top: 0;\n z-index: 10 !important;\n }\n}\n\nheader a {\n color: var(--text);\n text-decoration: none;\n}\n\n.home {\n display: flex;\n justify-content: flex-start;\n align-items: center;\n gap: 10px;\n flex-basis: 0;\n flex-grow: 1;\n max-width: 100%;\n}\n\n.logo {\n height: $logo;\n}\n\n.logo > * {\n height: 100%;\n}\n\n.title-text {\n display: flex;\n justify-content: flex-start;\n align-items: baseline;\n flex-wrap: wrap;\n gap: 5px;\n min-width: 0;\n font-family: var(--title);\n text-align: left;\n}\n\n.title {\n font-size: var(--large);\n}\n\n.subtitle {\n opacity: 0.65;\n font-weight: var(--thin);\n}\n\n.nav-toggle {\n display: none;\n position: relative;\n width: 30px;\n height: 30px;\n margin: 0;\n color: var(--text);\n appearance: none;\n transition: background var(--transition);\n}\n\n.nav-toggle:after {\n content: \"\\f0c9\";\n position: absolute;\n left: 50%;\n top: 50%;\n color: var(--text);\n font-size: 15px;\n font-family: \"Font Awesome 6 Free\";\n font-weight: 900;\n transform: translate(-50%, -50%);\n}\n\n.nav-toggle:checked:after {\n content: \"\\f00d\";\n}\n\nnav {\n display: flex;\n justify-content: center;\n align-items: center;\n flex-wrap: wrap;\n gap: 10px;\n font-family: var(--heading);\n text-transform: uppercase;\n}\n\nnav > a {\n padding: 5px;\n}\n\nnav > a:hover {\n color: var(--primary);\n}\n\nheader:not([data-big]) {\n @media (max-width: $collapse) {\n justify-content: flex-end;\n\n .nav-toggle {\n display: flex;\n }\n\n .nav-toggle:not(:checked) + nav {\n display: none;\n }\n\n nav {\n align-items: flex-end;\n flex-direction: column;\n width: 100%;\n }\n }\n}\n\nheader[data-big] {\n justify-content: center;\n align-items: center;\n flex-direction: column;\n padding: $big-padding 20px;\n\n @if $sticky {\n top: unset;\n }\n\n .home {\n flex-direction: column;\n flex-grow: 0;\n }\n\n .logo {\n height: $logo-big;\n }\n\n .title-text {\n flex-direction: column;\n align-items: center;\n text-align: center;\n }\n\n .title {\n font-size: var(--xxl);\n }\n\n .subtitle {\n font-size: var(--large);\n }\n}\n"],"file":"header.css"} \ No newline at end of file diff --git a/preview/pr-23/_styles/heading.css b/preview/pr-23/_styles/heading.css deleted file mode 100644 index 05ebc5b8..00000000 --- a/preview/pr-23/_styles/heading.css +++ /dev/null @@ -1,49 +0,0 @@ -h1, -h2, -h3, -h4, -h5, -h6 { - margin: 40px 0 20px 0; - font-family: var(--heading); - font-weight: var(--semi-bold); - text-align: left; - letter-spacing: 1px; -} - -h1 { - font-size: 1.6rem; - font-weight: var(--regular); - text-transform: uppercase; - text-align: center; -} - -h2 { - font-size: 1.6rem; - padding-bottom: 5px; - border-bottom: solid 1px var(--light-gray); - font-weight: var(--regular); -} - -h3 { - font-size: 1.5rem; -} - -h4 { - font-size: 1.3rem; -} - -h5 { - font-size: 1.15rem; -} - -h6 { - font-size: 1rem; -} - -:where(h1, h2, h3, h4, h5, h6) > .icon { - margin-right: 1em; - color: var(--light-gray); -} - -/*# sourceMappingURL=heading.css.map */ \ No newline at end of file diff --git a/preview/pr-23/_styles/heading.css.map b/preview/pr-23/_styles/heading.css.map deleted file mode 100644 index b8fe6a42..00000000 --- a/preview/pr-23/_styles/heading.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["heading.scss"],"names":[],"mappings":"AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAME;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA","sourcesContent":["h1,\nh2,\nh3,\nh4,\nh5,\nh6 {\n margin: 40px 0 20px 0;\n font-family: var(--heading);\n font-weight: var(--semi-bold);\n text-align: left;\n letter-spacing: 1px;\n}\n\nh1 {\n font-size: 1.6rem;\n font-weight: var(--regular);\n text-transform: uppercase;\n text-align: center;\n}\n\nh2 {\n font-size: 1.6rem;\n padding-bottom: 5px;\n border-bottom: solid 1px var(--light-gray);\n font-weight: var(--regular);\n}\n\nh3 {\n font-size: 1.5rem;\n}\n\nh4 {\n font-size: 1.3rem;\n}\n\nh5 {\n font-size: 1.15rem;\n}\n\nh6 {\n font-size: 1rem;\n}\n\n:where(h1, h2, h3, h4, h5, h6) > .icon {\n margin-right: 1em;\n color: var(--light-gray);\n}\n"],"file":"heading.css"} \ No newline at end of file diff --git a/preview/pr-23/_styles/highlight.css b/preview/pr-23/_styles/highlight.css deleted file mode 100644 index a8cf7d3c..00000000 --- a/preview/pr-23/_styles/highlight.css +++ /dev/null @@ -1,6 +0,0 @@ -mark { - background: #fef08a; - color: #000000; -} - -/*# sourceMappingURL=highlight.css.map */ \ No newline at end of file diff --git a/preview/pr-23/_styles/highlight.css.map b/preview/pr-23/_styles/highlight.css.map deleted file mode 100644 index 957ceb13..00000000 --- a/preview/pr-23/_styles/highlight.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["highlight.scss"],"names":[],"mappings":"AAAA;EACE;EACA","sourcesContent":["mark {\n background: #fef08a;\n color: #000000;\n}\n"],"file":"highlight.css"} \ No newline at end of file diff --git a/preview/pr-23/_styles/icon.css b/preview/pr-23/_styles/icon.css deleted file mode 100644 index ab61327d..00000000 --- a/preview/pr-23/_styles/icon.css +++ /dev/null @@ -1,15 +0,0 @@ -.icon { - font-size: 1em; -} - -span.icon { - line-height: 1; -} - -span.icon > svg { - position: relative; - top: 0.1em; - height: 1em; -} - -/*# sourceMappingURL=icon.css.map */ \ No newline at end of file diff --git a/preview/pr-23/_styles/icon.css.map b/preview/pr-23/_styles/icon.css.map deleted file mode 100644 index 22298685..00000000 --- a/preview/pr-23/_styles/icon.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["icon.scss"],"names":[],"mappings":"AAAA;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA","sourcesContent":[".icon {\n font-size: 1em;\n}\n\nspan.icon {\n line-height: 1;\n}\n\nspan.icon > svg {\n position: relative;\n top: 0.1em;\n height: 1em;\n}\n"],"file":"icon.css"} \ No newline at end of file diff --git a/preview/pr-23/_styles/image.css b/preview/pr-23/_styles/image.css deleted file mode 100644 index 70340d33..00000000 --- a/preview/pr-23/_styles/image.css +++ /dev/null @@ -1,6 +0,0 @@ -img { - max-width: 100%; - max-height: 100%; -} - -/*# sourceMappingURL=image.css.map */ \ No newline at end of file diff --git a/preview/pr-23/_styles/image.css.map b/preview/pr-23/_styles/image.css.map deleted file mode 100644 index e88ec450..00000000 --- a/preview/pr-23/_styles/image.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["image.scss"],"names":[],"mappings":"AAAA;EACE;EACA","sourcesContent":["img {\n max-width: 100%;\n max-height: 100%;\n}\n"],"file":"image.css"} \ No newline at end of file diff --git a/preview/pr-23/_styles/link.css b/preview/pr-23/_styles/link.css deleted file mode 100644 index 3235e803..00000000 --- a/preview/pr-23/_styles/link.css +++ /dev/null @@ -1,15 +0,0 @@ -a { - color: var(--primary); - transition: color var(--transition); - overflow-wrap: break-word; -} - -a:hover { - color: var(--text); -} - -a:not([href]) { - color: var(--text); -} - -/*# sourceMappingURL=link.css.map */ \ No newline at end of file diff --git a/preview/pr-23/_styles/link.css.map b/preview/pr-23/_styles/link.css.map deleted file mode 100644 index 96435508..00000000 --- a/preview/pr-23/_styles/link.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["link.scss"],"names":[],"mappings":"AAAA;EACE;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE","sourcesContent":["a {\n color: var(--primary);\n transition: color var(--transition);\n overflow-wrap: break-word;\n}\n\na:hover {\n color: var(--text);\n}\n\na:not([href]) {\n color: var(--text);\n}\n"],"file":"link.css"} \ No newline at end of file diff --git a/preview/pr-23/_styles/list.css b/preview/pr-23/_styles/list.css deleted file mode 100644 index 181f8a2b..00000000 --- a/preview/pr-23/_styles/list.css +++ /dev/null @@ -1,22 +0,0 @@ -ul, -ol { - margin: 20px 0; - padding-left: 40px; -} - -ul { - list-style-type: square; -} - -li { - margin: 5px 0; - padding-left: 10px; - text-align: justify; - line-height: var(--spacing); -} -li ul, -li ol { - margin: 0; -} - -/*# sourceMappingURL=list.css.map */ \ No newline at end of file diff --git a/preview/pr-23/_styles/list.css.map b/preview/pr-23/_styles/list.css.map deleted file mode 100644 index a3ab1ed0..00000000 --- a/preview/pr-23/_styles/list.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["list.scss"],"names":[],"mappings":"AAAA;AAAA;EAEE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;;AAEA;AAAA;EAEE","sourcesContent":["ul,\nol {\n margin: 20px 0;\n padding-left: 40px;\n}\n\nul {\n list-style-type: square;\n}\n\nli {\n margin: 5px 0;\n padding-left: 10px;\n text-align: justify;\n line-height: var(--spacing);\n\n ul,\n ol {\n margin: 0;\n }\n}\n"],"file":"list.css"} \ No newline at end of file diff --git a/preview/pr-23/_styles/main.css b/preview/pr-23/_styles/main.css deleted file mode 100644 index f72eb0d3..00000000 --- a/preview/pr-23/_styles/main.css +++ /dev/null @@ -1,7 +0,0 @@ -main { - display: flex; - flex-direction: column; - flex-grow: 1; -} - -/*# sourceMappingURL=main.css.map */ \ No newline at end of file diff --git a/preview/pr-23/_styles/main.css.map b/preview/pr-23/_styles/main.css.map deleted file mode 100644 index a2a0fa8d..00000000 --- a/preview/pr-23/_styles/main.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["main.scss"],"names":[],"mappings":"AAAA;EACE;EACA;EACA","sourcesContent":["main {\n display: flex;\n flex-direction: column;\n flex-grow: 1;\n}\n"],"file":"main.css"} \ No newline at end of file diff --git a/preview/pr-23/_styles/paragraph.css b/preview/pr-23/_styles/paragraph.css deleted file mode 100644 index 7e46c391..00000000 --- a/preview/pr-23/_styles/paragraph.css +++ /dev/null @@ -1,7 +0,0 @@ -p { - margin: 20px 0; - text-align: justify; - line-height: var(--spacing); -} - -/*# sourceMappingURL=paragraph.css.map */ \ No newline at end of file diff --git a/preview/pr-23/_styles/paragraph.css.map b/preview/pr-23/_styles/paragraph.css.map deleted file mode 100644 index 7eb50a68..00000000 --- a/preview/pr-23/_styles/paragraph.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["paragraph.scss"],"names":[],"mappings":"AAAA;EACE;EACA;EACA","sourcesContent":["p {\n margin: 20px 0;\n text-align: justify;\n line-height: var(--spacing);\n}\n"],"file":"paragraph.css"} \ No newline at end of file diff --git a/preview/pr-23/_styles/portrait.css b/preview/pr-23/_styles/portrait.css deleted file mode 100644 index ef892bf4..00000000 --- a/preview/pr-23/_styles/portrait.css +++ /dev/null @@ -1,96 +0,0 @@ -.portrait-wrapper { - display: flex; - justify-content: center; - align-items: center; - flex-direction: column; -} - -.portrait { - position: relative; - display: inline-flex; - justify-content: center; - align-items: center; - flex-direction: column; - gap: 20px; - margin: 20px; - width: 175px; - max-width: calc(100% - 20px - 20px); - text-decoration: none; -} - -.portrait-links { - display: flex; - justify-content: space-between; - margin-top: -15px; -} - -.portrait[data-style=small] { - width: 125px; -} - -.portrait[data-style=tiny] { - flex-direction: row; - gap: 15px; - width: unset; - text-align: left; -} - -.portrait-image { - width: 100%; - aspect-ratio: 1/1; - border-radius: 999px; - object-fit: cover; - box-shadow: var(--shadow); -} - -.portrait[data-style=tiny] .portrait-image { - width: 50px; -} - -.portrait[data-style=tiny] .portrait-role { - display: none; -} - -.portrait-text { - display: flex; - flex-direction: column; - line-height: calc(var(--spacing) - 0.4); -} - -.portrait-name { - white-space: nowrap; - font-family: var(--heading); - font-weight: var(--semi-bold); -} - -.portrait-role .icon { - position: absolute; - left: 0; - top: 0; - display: flex; - justify-content: center; - align-items: center; - width: 20%; - aspect-ratio: 1/1; - border-radius: 999px; - background: var(--background); - box-shadow: var(--shadow); - transform: translate(14%, 14%); -} - -.portrait[data-style=small] .portrait-role .icon { - left: -2px; - top: -2px; -} - -.portrait[data-style=small] .portrait-role { - font-size: 11px; -} - -.portrait .portrait-role { - font-size: 13px; - font-weight: var(--regular); - color: var(--text-light); -} - -/*# sourceMappingURL=portrait.css.map */ \ No newline at end of file diff --git a/preview/pr-23/_styles/portrait.css.map b/preview/pr-23/_styles/portrait.css.map deleted file mode 100644 index 3975df61..00000000 --- a/preview/pr-23/_styles/portrait.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["portrait.scss"],"names":[],"mappings":"AAAA;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAIF;EACE;EACA;EACA;;;AAGF;EAEE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA","sourcesContent":[".portrait-wrapper {\n display: flex;\n justify-content: center;\n align-items: center;\n flex-direction: column;\n}\n\n.portrait {\n position: relative;\n display: inline-flex;\n justify-content: center;\n align-items: center;\n flex-direction: column;\n gap: 20px;\n margin: 20px;\n width: 175px;\n max-width: calc(100% - 20px - 20px);\n text-decoration: none;\n}\n\n.portrait-links {\n display: flex;\n justify-content: space-between;\n margin-top: -15px;\n}\n\n.portrait[data-style=\"small\"] {\n width: 125px;\n}\n\n.portrait[data-style=\"tiny\"] {\n flex-direction: row;\n gap: 15px;\n width: unset;\n text-align: left;\n}\n\n.portrait-image {\n width: 100%;\n aspect-ratio: 1 / 1;\n border-radius: 999px;\n object-fit: cover;\n box-shadow: var(--shadow);\n}\n\n.portrait[data-style=\"tiny\"] .portrait-image {\n width: 50px;\n}\n\n.portrait[data-style=\"tiny\"] .portrait-role {\n display: none;\n}\n\n\n.portrait-text {\n display: flex;\n flex-direction: column;\n line-height: calc(var(--spacing) - 0.4);\n}\n\n.portrait-name {\n // 文字横向排列\n white-space: nowrap;\n font-family: var(--heading);\n font-weight: var(--semi-bold);\n}\n\n.portrait-role .icon {\n position: absolute;\n left: 0;\n top: 0;\n display: flex;\n justify-content: center;\n align-items: center;\n width: 20%;\n aspect-ratio: 1 / 1;\n border-radius: 999px;\n background: var(--background);\n box-shadow: var(--shadow);\n transform: translate(14%, 14%);\n}\n\n.portrait[data-style=\"small\"] .portrait-role .icon {\n left: -2px;\n top: -2px;\n\n}\n.portrait[data-style=\"small\"] .portrait-role{\n font-size: 11px;\n}\n\n.portrait .portrait-role {\n font-size: 13px;\n font-weight: var(--regular);\n color: var(--text-light);\n}"],"file":"portrait.css"} \ No newline at end of file diff --git a/preview/pr-23/_styles/post-excerpt.css b/preview/pr-23/_styles/post-excerpt.css deleted file mode 100644 index 9935b248..00000000 --- a/preview/pr-23/_styles/post-excerpt.css +++ /dev/null @@ -1,63 +0,0 @@ -.post-excerpt-container { - container-type: inline-size; -} - -.post-excerpt { - display: flex; - margin: 20px 0; - border-radius: var(--rounded); - background: var(--background); - overflow: hidden; - box-shadow: var(--shadow); -} - -.post-excerpt-image { - position: relative; - width: 200px; - flex-shrink: 0; -} - -.post-excerpt-image img { - position: absolute; - inset: 0; - width: 100%; - height: 100%; - object-fit: cover; -} - -.post-excerpt-text { - display: flex; - flex-wrap: wrap; - gap: 20px; - padding: 20px 30px; - text-align: left; -} - -.post-excerpt-text > * { - margin: 0 !important; -} - -.post-excerpt-text > a:first-child { - width: 100%; - font-weight: var(--semi-bold); -} - -.post-excerpt-text > div { - justify-content: flex-start; -} - -.post-excerpt-text > p { - width: 100%; -} - -@container (max-width: 800px) { - .post-excerpt { - flex-direction: column; - } - .post-excerpt-image { - width: unset; - height: 200px; - } -} - -/*# sourceMappingURL=post-excerpt.css.map */ \ No newline at end of file diff --git a/preview/pr-23/_styles/post-excerpt.css.map b/preview/pr-23/_styles/post-excerpt.css.map deleted file mode 100644 index e82e3a22..00000000 --- a/preview/pr-23/_styles/post-excerpt.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["post-excerpt.scss"],"names":[],"mappings":"AAGA;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA,OAlBW;EAmBX;;;AAIF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;IACE;;EAGF;IACE;IACA,QA/DS","sourcesContent":["$thumb-size: 200px;\n$wrap: 800px;\n\n.post-excerpt-container {\n container-type: inline-size;\n}\n\n.post-excerpt {\n display: flex;\n margin: 20px 0;\n border-radius: var(--rounded);\n background: var(--background);\n overflow: hidden;\n box-shadow: var(--shadow);\n}\n\n.post-excerpt-image {\n position: relative;\n width: $thumb-size;\n flex-shrink: 0;\n // box-shadow: var(--shadow);\n}\n\n.post-excerpt-image img {\n position: absolute;\n inset: 0;\n width: 100%;\n height: 100%;\n object-fit: cover;\n}\n\n.post-excerpt-text {\n display: flex;\n flex-wrap: wrap;\n gap: 20px;\n padding: 20px 30px;\n text-align: left;\n}\n\n.post-excerpt-text > * {\n margin: 0 !important;\n}\n\n.post-excerpt-text > a:first-child {\n width: 100%;\n font-weight: var(--semi-bold);\n}\n\n.post-excerpt-text > div {\n justify-content: flex-start;\n}\n\n.post-excerpt-text > p {\n width: 100%;\n}\n\n@container (max-width: #{$wrap}) {\n .post-excerpt {\n flex-direction: column;\n }\n\n .post-excerpt-image {\n width: unset;\n height: $thumb-size;\n }\n}\n"],"file":"post-excerpt.css"} \ No newline at end of file diff --git a/preview/pr-23/_styles/post-info.css b/preview/pr-23/_styles/post-info.css deleted file mode 100644 index df1827c5..00000000 --- a/preview/pr-23/_styles/post-info.css +++ /dev/null @@ -1,32 +0,0 @@ -.post-info { - display: flex; - justify-content: center; - align-items: center; - flex-wrap: wrap; - gap: 20px; - margin: 20px 0; - color: var(--dark-gray); -} - -.post-info .portrait { - margin: 0; -} - -.post-info .icon { - margin-right: 0.5em; -} - -.post-info a { - color: inherit; -} - -.post-info a:hover { - color: var(--primary); -} - -.post-info > span { - text-align: center; - white-space: nowrap; -} - -/*# sourceMappingURL=post-info.css.map */ \ No newline at end of file diff --git a/preview/pr-23/_styles/post-info.css.map b/preview/pr-23/_styles/post-info.css.map deleted file mode 100644 index 9950b787..00000000 --- a/preview/pr-23/_styles/post-info.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["post-info.scss"],"names":[],"mappings":"AAAA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA","sourcesContent":[".post-info {\n display: flex;\n justify-content: center;\n align-items: center;\n flex-wrap: wrap;\n gap: 20px;\n margin: 20px 0;\n color: var(--dark-gray);\n}\n\n.post-info .portrait {\n margin: 0;\n}\n\n.post-info .icon {\n margin-right: 0.5em;\n}\n\n.post-info a {\n color: inherit;\n}\n\n.post-info a:hover {\n color: var(--primary);\n}\n\n.post-info > span {\n text-align: center;\n white-space: nowrap;\n}\n"],"file":"post-info.css"} \ No newline at end of file diff --git a/preview/pr-23/_styles/post-nav.css b/preview/pr-23/_styles/post-nav.css deleted file mode 100644 index f7ddfaaa..00000000 --- a/preview/pr-23/_styles/post-nav.css +++ /dev/null @@ -1,35 +0,0 @@ -.post-nav { - display: flex; - justify-content: space-between; - align-items: flex-start; - gap: 10px; - color: var(--gray); -} - -.post-nav > :first-child { - text-align: left; -} - -.post-nav > :last-child { - text-align: right; -} - -.post-nav > :first-child .icon { - margin-right: 0.5em; -} - -.post-nav > :last-child .icon { - margin-left: 0.5em; -} - -@media (max-width: 600px) { - .post-nav { - align-items: center; - flex-direction: column; - } - .post-nav > * { - text-align: center !important; - } -} - -/*# sourceMappingURL=post-nav.css.map */ \ No newline at end of file diff --git a/preview/pr-23/_styles/post-nav.css.map b/preview/pr-23/_styles/post-nav.css.map deleted file mode 100644 index b0699aca..00000000 --- a/preview/pr-23/_styles/post-nav.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["post-nav.scss"],"names":[],"mappings":"AAEA;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;IACE;IACA;;EAGF;IACE","sourcesContent":["$wrap: 600px;\n\n.post-nav {\n display: flex;\n justify-content: space-between;\n align-items: flex-start;\n gap: 10px;\n color: var(--gray);\n}\n\n.post-nav > :first-child {\n text-align: left;\n}\n\n.post-nav > :last-child {\n text-align: right;\n}\n\n.post-nav > :first-child .icon {\n margin-right: 0.5em;\n}\n\n.post-nav > :last-child .icon {\n margin-left: 0.5em;\n}\n\n@media (max-width: $wrap) {\n .post-nav {\n align-items: center;\n flex-direction: column;\n }\n\n .post-nav > * {\n text-align: center !important;\n }\n}\n"],"file":"post-nav.css"} \ No newline at end of file diff --git a/preview/pr-23/_styles/quote.css b/preview/pr-23/_styles/quote.css deleted file mode 100644 index b754635d..00000000 --- a/preview/pr-23/_styles/quote.css +++ /dev/null @@ -1,15 +0,0 @@ -blockquote { - margin: 20px 0; - padding: 10px 20px; - border-left: solid 4px var(--light-gray); -} - -blockquote > :first-child { - margin-top: 0; -} - -blockquote > :last-child { - margin-bottom: 0; -} - -/*# sourceMappingURL=quote.css.map */ \ No newline at end of file diff --git a/preview/pr-23/_styles/quote.css.map b/preview/pr-23/_styles/quote.css.map deleted file mode 100644 index 16c9d4c8..00000000 --- a/preview/pr-23/_styles/quote.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["quote.scss"],"names":[],"mappings":"AAAA;EACE;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE","sourcesContent":["blockquote {\n margin: 20px 0;\n padding: 10px 20px;\n border-left: solid 4px var(--light-gray);\n}\n\nblockquote > :first-child {\n margin-top: 0;\n}\n\nblockquote > :last-child {\n margin-bottom: 0;\n}\n"],"file":"quote.css"} \ No newline at end of file diff --git a/preview/pr-23/_styles/rule.css b/preview/pr-23/_styles/rule.css deleted file mode 100644 index 28ca0809..00000000 --- a/preview/pr-23/_styles/rule.css +++ /dev/null @@ -1,8 +0,0 @@ -hr { - margin: 40px 0; - background: var(--light-gray); - border: none; - height: 1px; -} - -/*# sourceMappingURL=rule.css.map */ \ No newline at end of file diff --git a/preview/pr-23/_styles/rule.css.map b/preview/pr-23/_styles/rule.css.map deleted file mode 100644 index a955dd9f..00000000 --- a/preview/pr-23/_styles/rule.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["rule.scss"],"names":[],"mappings":"AAAA;EACE;EACA;EACA;EACA","sourcesContent":["hr {\n margin: 40px 0;\n background: var(--light-gray);\n border: none;\n height: 1px;\n}\n"],"file":"rule.css"} \ No newline at end of file diff --git a/preview/pr-23/_styles/search-box.css b/preview/pr-23/_styles/search-box.css deleted file mode 100644 index 9766e924..00000000 --- a/preview/pr-23/_styles/search-box.css +++ /dev/null @@ -1,25 +0,0 @@ -.search-box { - position: relative; - height: 40px; -} - -.search-box .search-input { - width: 100%; - height: 100%; - padding-right: 40px; -} - -.search-box button { - position: absolute; - inset: 0 0 0 auto; - display: flex; - justify-content: center; - align-items: center; - padding: 0; - aspect-ratio: 1/1; - background: none; - color: var(--black); - border: none; -} - -/*# sourceMappingURL=search-box.css.map */ \ No newline at end of file diff --git a/preview/pr-23/_styles/search-box.css.map b/preview/pr-23/_styles/search-box.css.map deleted file mode 100644 index 7d452743..00000000 --- a/preview/pr-23/_styles/search-box.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["search-box.scss"],"names":[],"mappings":"AAAA;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA","sourcesContent":[".search-box {\n position: relative;\n height: 40px;\n}\n\n.search-box .search-input {\n width: 100%;\n height: 100%;\n padding-right: 40px;\n}\n\n.search-box button {\n position: absolute;\n inset: 0 0 0 auto;\n display: flex;\n justify-content: center;\n align-items: center;\n padding: 0;\n aspect-ratio: 1 / 1;\n background: none;\n color: var(--black);\n border: none;\n}\n"],"file":"search-box.css"} \ No newline at end of file diff --git a/preview/pr-23/_styles/search-info.css b/preview/pr-23/_styles/search-info.css deleted file mode 100644 index e5c9a305..00000000 --- a/preview/pr-23/_styles/search-info.css +++ /dev/null @@ -1,8 +0,0 @@ -.search-info { - margin: 20px 0; - text-align: center; - font-style: italic; - line-height: var(--spacing); -} - -/*# sourceMappingURL=search-info.css.map */ \ No newline at end of file diff --git a/preview/pr-23/_styles/search-info.css.map b/preview/pr-23/_styles/search-info.css.map deleted file mode 100644 index d825cee0..00000000 --- a/preview/pr-23/_styles/search-info.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["search-info.scss"],"names":[],"mappings":"AAAA;EACE;EACA;EACA;EACA","sourcesContent":[".search-info {\n margin: 20px 0;\n text-align: center;\n font-style: italic;\n line-height: var(--spacing);\n}\n"],"file":"search-info.css"} \ No newline at end of file diff --git a/preview/pr-23/_styles/section.css b/preview/pr-23/_styles/section.css deleted file mode 100644 index e1ceb7db..00000000 --- a/preview/pr-23/_styles/section.css +++ /dev/null @@ -1,35 +0,0 @@ -section { - padding: 40px max(40px, (100% - 1000px) / 2); - transition: background var(--transition), color var(--transition); -} - -section[data-size=wide] { - padding: 40px; -} - -section[data-size=full] { - padding: 0; -} - -section[data-size=full] > * { - margin: 0; - border-radius: 0; -} - -section[data-size=full] img { - border-radius: 0; -} - -main > section:last-of-type { - flex-grow: 1; -} - -main > section:nth-of-type(odd) { - background: var(--background); -} - -main > section:nth-of-type(even) { - background: var(--background-alt); -} - -/*# sourceMappingURL=section.css.map */ \ No newline at end of file diff --git a/preview/pr-23/_styles/section.css.map b/preview/pr-23/_styles/section.css.map deleted file mode 100644 index 73ffca09..00000000 --- a/preview/pr-23/_styles/section.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["section.scss"],"names":[],"mappings":"AAGA;EACE;EACA;;;AAGF;EACE,SARQ;;;AAWV;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE","sourcesContent":["$page: 1000px;\n$padding: 40px;\n\nsection {\n padding: $padding max($padding, calc((100% - $page) / 2));\n transition: background var(--transition), color var(--transition);\n}\n\nsection[data-size=\"wide\"] {\n padding: $padding;\n}\n\nsection[data-size=\"full\"] {\n padding: 0;\n}\n\nsection[data-size=\"full\"] > * {\n margin: 0;\n border-radius: 0;\n}\n\nsection[data-size=\"full\"] img {\n border-radius: 0;\n}\n\nmain > section:last-of-type {\n flex-grow: 1;\n}\n\nmain > section:nth-of-type(odd) {\n background: var(--background);\n}\n\nmain > section:nth-of-type(even) {\n background: var(--background-alt);\n}\n"],"file":"section.css"} \ No newline at end of file diff --git a/preview/pr-23/_styles/table.css b/preview/pr-23/_styles/table.css deleted file mode 100644 index ef83c462..00000000 --- a/preview/pr-23/_styles/table.css +++ /dev/null @@ -1,17 +0,0 @@ -table { - margin: 40px auto; - border-collapse: collapse; - overflow-wrap: anywhere; -} - -th { - font-weight: var(--semi-bold); -} - -th, -td { - padding: 10px 15px; - border: solid 1px var(--light-gray); -} - -/*# sourceMappingURL=table.css.map */ \ No newline at end of file diff --git a/preview/pr-23/_styles/table.css.map b/preview/pr-23/_styles/table.css.map deleted file mode 100644 index c3a3f068..00000000 --- a/preview/pr-23/_styles/table.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["table.scss"],"names":[],"mappings":"AAAA;EACE;EACA;EACA;;;AAGF;EACE;;;AAGF;AAAA;EAEE;EACA","sourcesContent":["table {\n margin: 40px auto;\n border-collapse: collapse;\n overflow-wrap: anywhere;\n}\n\nth {\n font-weight: var(--semi-bold);\n}\n\nth,\ntd {\n padding: 10px 15px;\n border: solid 1px var(--light-gray);\n}\n"],"file":"table.css"} \ No newline at end of file diff --git a/preview/pr-23/_styles/tags.css b/preview/pr-23/_styles/tags.css deleted file mode 100644 index 909815e8..00000000 --- a/preview/pr-23/_styles/tags.css +++ /dev/null @@ -1,33 +0,0 @@ -.tags { - display: flex; - justify-content: center; - align-items: center; - flex-wrap: wrap; - gap: 10px; - max-width: 100%; - margin: 20px 0; -} - -.tag { - max-width: 100%; - margin: 0; - padding: 5px 10px; - border-radius: 999px; - background: var(--secondary); - color: var(--text); - text-decoration: none; - overflow: hidden; - text-overflow: ellipsis; - white-space: nowrap; - transition: background var(--transition), color var(--transition); -} - -.tag:hover { - background: var(--light-gray); -} - -.tag[data-active] { - background: var(--light-gray); -} - -/*# sourceMappingURL=tags.css.map */ \ No newline at end of file diff --git a/preview/pr-23/_styles/tags.css.map b/preview/pr-23/_styles/tags.css.map deleted file mode 100644 index ae75420a..00000000 --- a/preview/pr-23/_styles/tags.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["tags.scss"],"names":[],"mappings":"AAAA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE","sourcesContent":[".tags {\n display: flex;\n justify-content: center;\n align-items: center;\n flex-wrap: wrap;\n gap: 10px;\n max-width: 100%;\n margin: 20px 0;\n}\n\n.tag {\n max-width: 100%;\n margin: 0;\n padding: 5px 10px;\n border-radius: 999px;\n background: var(--secondary);\n color: var(--text);\n text-decoration: none;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n transition: background var(--transition), color var(--transition);\n}\n\n.tag:hover {\n background: var(--light-gray);\n}\n\n.tag[data-active] {\n background: var(--light-gray);\n}\n"],"file":"tags.css"} \ No newline at end of file diff --git a/preview/pr-23/_styles/textbox.css b/preview/pr-23/_styles/textbox.css deleted file mode 100644 index d8ec7910..00000000 --- a/preview/pr-23/_styles/textbox.css +++ /dev/null @@ -1,16 +0,0 @@ -input[type=text] { - width: 100%; - height: 40px; - margin: 0; - padding: 5px 10px; - border: solid 1px var(--light-gray); - border-radius: var(--rounded); - background: var(--background); - color: var(--text); - font-family: inherit; - font-size: inherit; - appearance: none; - box-shadow: var(--shadow); -} - -/*# sourceMappingURL=textbox.css.map */ \ No newline at end of file diff --git a/preview/pr-23/_styles/textbox.css.map b/preview/pr-23/_styles/textbox.css.map deleted file mode 100644 index de78ed43..00000000 --- a/preview/pr-23/_styles/textbox.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["textbox.scss"],"names":[],"mappings":"AAAA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA","sourcesContent":["input[type=\"text\"] {\n width: 100%;\n height: 40px;\n margin: 0;\n padding: 5px 10px;\n border: solid 1px var(--light-gray);\n border-radius: var(--rounded);\n background: var(--background);\n color: var(--text);\n font-family: inherit;\n font-size: inherit;\n appearance: none;\n box-shadow: var(--shadow);\n}\n"],"file":"textbox.css"} \ No newline at end of file diff --git a/preview/pr-23/_styles/tooltip.css b/preview/pr-23/_styles/tooltip.css deleted file mode 100644 index 28b590eb..00000000 --- a/preview/pr-23/_styles/tooltip.css +++ /dev/null @@ -1,72 +0,0 @@ -.tippy-box { - background: var(--background); - color: var(--text); - padding: 7.5px; - text-align: left; - box-shadow: var(--shadow); -} - -.tippy-arrow { - width: 30px; - height: 30px; -} - -.tippy-arrow:before { - width: 10px; - height: 10px; - background: var(--background); - box-shadow: var(--shadow); -} - -.tippy-arrow { - overflow: hidden; - pointer-events: none; -} - -.tippy-box[data-placement=top] .tippy-arrow { - inset: unset; - top: 100%; -} - -.tippy-box[data-placement=bottom] .tippy-arrow { - inset: unset; - bottom: 100%; -} - -.tippy-box[data-placement=left] .tippy-arrow { - inset: unset; - left: 100%; -} - -.tippy-box[data-placement=right] .tippy-arrow { - inset: unset; - right: 100%; -} - -.tippy-arrow:before { - border: unset !important; - transform-origin: center !important; - transform: translate(-50%, -50%) rotate(45deg) !important; -} - -.tippy-box[data-placement=top] .tippy-arrow:before { - left: 50% !important; - top: 0 !important; -} - -.tippy-box[data-placement=bottom] .tippy-arrow:before { - left: 50% !important; - top: 100% !important; -} - -.tippy-box[data-placement=left] .tippy-arrow:before { - left: 0 !important; - top: 50% !important; -} - -.tippy-box[data-placement=right] .tippy-arrow:before { - left: 100% !important; - top: 50% !important; -} - -/*# sourceMappingURL=tooltip.css.map */ \ No newline at end of file diff --git a/preview/pr-23/_styles/tooltip.css.map b/preview/pr-23/_styles/tooltip.css.map deleted file mode 100644 index 6b52e915..00000000 --- a/preview/pr-23/_styles/tooltip.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["tooltip.scss"],"names":[],"mappings":"AAAA;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAIF;EACE;EACA;;;AAEF;EACE;EACA;;;AAEF;EACE;EACA;;;AAEF;EACE;EACA;;;AAEF;EACE;EACA;;;AAEF;EACE;EACA;EACA;;;AAEF;EACE;EACA;;;AAEF;EACE;EACA;;;AAEF;EACE;EACA;;;AAEF;EACE;EACA","sourcesContent":[".tippy-box {\n background: var(--background);\n color: var(--text);\n padding: 7.5px;\n text-align: left;\n box-shadow: var(--shadow);\n}\n\n.tippy-arrow {\n width: 30px;\n height: 30px;\n}\n\n.tippy-arrow:before {\n width: 10px;\n height: 10px;\n background: var(--background);\n box-shadow: var(--shadow);\n}\n\n// correct tippy arrow styles to support intuitive arrow styles above\n.tippy-arrow {\n overflow: hidden;\n pointer-events: none;\n}\n.tippy-box[data-placement=\"top\"] .tippy-arrow {\n inset: unset;\n top: 100%;\n}\n.tippy-box[data-placement=\"bottom\"] .tippy-arrow {\n inset: unset;\n bottom: 100%;\n}\n.tippy-box[data-placement=\"left\"] .tippy-arrow {\n inset: unset;\n left: 100%;\n}\n.tippy-box[data-placement=\"right\"] .tippy-arrow {\n inset: unset;\n right: 100%;\n}\n.tippy-arrow:before {\n border: unset !important;\n transform-origin: center !important;\n transform: translate(-50%, -50%) rotate(45deg) !important;\n}\n.tippy-box[data-placement=\"top\"] .tippy-arrow:before {\n left: 50% !important;\n top: 0 !important;\n}\n.tippy-box[data-placement=\"bottom\"] .tippy-arrow:before {\n left: 50% !important;\n top: 100% !important;\n}\n.tippy-box[data-placement=\"left\"] .tippy-arrow:before {\n left: 0 !important;\n top: 50% !important;\n}\n.tippy-box[data-placement=\"right\"] .tippy-arrow:before {\n left: 100% !important;\n top: 50% !important;\n}\n"],"file":"tooltip.css"} \ No newline at end of file diff --git a/preview/pr-23/_styles/util.css b/preview/pr-23/_styles/util.css deleted file mode 100644 index 995ea77c..00000000 --- a/preview/pr-23/_styles/util.css +++ /dev/null @@ -1,13 +0,0 @@ -.left { - text-align: left; -} - -.center { - text-align: center; -} - -.right { - text-align: right; -} - -/*# sourceMappingURL=util.css.map */ \ No newline at end of file diff --git a/preview/pr-23/_styles/util.css.map b/preview/pr-23/_styles/util.css.map deleted file mode 100644 index c21a68d3..00000000 --- a/preview/pr-23/_styles/util.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["util.scss"],"names":[],"mappings":"AAAA;EACE;;;AAGF;EACE;;;AAGF;EACE","sourcesContent":[".left {\n text-align: left;\n}\n\n.center {\n text-align: center;\n}\n\n.right {\n text-align: right;\n}\n"],"file":"util.css"} \ No newline at end of file diff --git "a/preview/pr-23/awards/23\344\272\272\345\267\245\346\231\272\350\203\275\346\214\221\346\210\230\350\265\233.html" "b/preview/pr-23/awards/23\344\272\272\345\267\245\346\231\272\350\203\275\346\214\221\346\210\230\350\265\233.html" deleted file mode 100644 index af2c2725..00000000 --- "a/preview/pr-23/awards/23\344\272\272\345\267\245\346\231\272\350\203\275\346\214\221\346\210\230\350\265\233.html" +++ /dev/null @@ -1,507 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -第五届全球校园人工智能算法精英大赛 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - -
- - - - - - - diff --git "a/preview/pr-23/awards/23\345\205\250\345\233\275\344\270\211\347\273\264\346\225\260\345\255\227\345\273\272\351\200\240\345\244\247\350\265\233\342\200\234\345\215\216\344\270\255\346\225\260\346\216\247\346\235\257\342\200\235\345\267\245\344\270\232\345\215\217\344\275\234\346\234\272\345\231\250\344\272\272\345\217\212\346\225\260\345\255\227\345\255\252\347\224\237\346\212\200\346\234\257\345\210\233\346\226\260\345\272\224\347\224\250\344\270\223\351\241\271\350\265\233.html" "b/preview/pr-23/awards/23\345\205\250\345\233\275\344\270\211\347\273\264\346\225\260\345\255\227\345\273\272\351\200\240\345\244\247\350\265\233\342\200\234\345\215\216\344\270\255\346\225\260\346\216\247\346\235\257\342\200\235\345\267\245\344\270\232\345\215\217\344\275\234\346\234\272\345\231\250\344\272\272\345\217\212\346\225\260\345\255\227\345\255\252\347\224\237\346\212\200\346\234\257\345\210\233\346\226\260\345\272\224\347\224\250\344\270\223\351\241\271\350\265\233.html" deleted file mode 100644 index 2e7a8ef2..00000000 --- "a/preview/pr-23/awards/23\345\205\250\345\233\275\344\270\211\347\273\264\346\225\260\345\255\227\345\273\272\351\200\240\345\244\247\350\265\233\342\200\234\345\215\216\344\270\255\346\225\260\346\216\247\346\235\257\342\200\235\345\267\245\344\270\232\345\215\217\344\275\234\346\234\272\345\231\250\344\272\272\345\217\212\346\225\260\345\255\227\345\255\252\347\224\237\346\212\200\346\234\257\345\210\233\346\226\260\345\272\224\347\224\250\344\270\223\351\241\271\350\265\233.html" +++ /dev/null @@ -1,507 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -第十六届全国三维数字化创新设计大赛 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - -
- - - - - - - diff --git "a/preview/pr-23/awards/23\345\265\214\350\265\2331.html" "b/preview/pr-23/awards/23\345\265\214\350\265\2331.html" deleted file mode 100644 index 743b44c7..00000000 --- "a/preview/pr-23/awards/23\345\265\214\350\265\2331.html" +++ /dev/null @@ -1,507 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -第六届全国大学生嵌入式芯片与系统设计竞赛 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - -
- - - - - - - diff --git "a/preview/pr-23/awards/23\345\265\214\350\265\2332.html" "b/preview/pr-23/awards/23\345\265\214\350\265\2332.html" deleted file mode 100644 index 492e4cd7..00000000 --- "a/preview/pr-23/awards/23\345\265\214\350\265\2332.html" +++ /dev/null @@ -1,507 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -第六届全国大学生嵌入式芯片与系统设计竞赛 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - -
- - - - - - - diff --git "a/preview/pr-23/awards/24\345\265\214\350\265\2331.html" "b/preview/pr-23/awards/24\345\265\214\350\265\2331.html" deleted file mode 100644 index 9db993e6..00000000 --- "a/preview/pr-23/awards/24\345\265\214\350\265\2331.html" +++ /dev/null @@ -1,507 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -第七届全国大学生嵌入式芯片与系统设计竞赛 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - -
- - - - - - - diff --git "a/preview/pr-23/awards/24\345\265\214\350\265\2332.html" "b/preview/pr-23/awards/24\345\265\214\350\265\2332.html" deleted file mode 100644 index 353e87b8..00000000 --- "a/preview/pr-23/awards/24\345\265\214\350\265\2332.html" +++ /dev/null @@ -1,507 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -第七届全国大学生嵌入式芯片与系统设计竞赛 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - -
- - - - - - - diff --git "a/preview/pr-23/awards/24\345\265\214\350\265\2333.html" "b/preview/pr-23/awards/24\345\265\214\350\265\2333.html" deleted file mode 100644 index 0a74a943..00000000 --- "a/preview/pr-23/awards/24\345\265\214\350\265\2333.html" +++ /dev/null @@ -1,507 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -第七届全国大学生嵌入式芯片与系统设计竞赛 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - -
- - - - - - - diff --git "a/preview/pr-23/awards/24\345\265\214\350\265\2334.html" "b/preview/pr-23/awards/24\345\265\214\350\265\2334.html" deleted file mode 100644 index ad98017f..00000000 --- "a/preview/pr-23/awards/24\345\265\214\350\265\2334.html" +++ /dev/null @@ -1,507 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -第七届全国大学生嵌入式芯片与系统设计竞赛 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - -
- - - - - - - diff --git "a/preview/pr-23/awards/24\347\224\265\350\265\2331.html" "b/preview/pr-23/awards/24\347\224\265\350\265\2331.html" deleted file mode 100644 index 19ab7342..00000000 --- "a/preview/pr-23/awards/24\347\224\265\350\265\2331.html" +++ /dev/null @@ -1,507 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -全国大学生电子设计竞赛 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - -
- - - - - - - diff --git "a/preview/pr-23/awards/RM24\347\253\236\346\212\200\345\245\226.html" "b/preview/pr-23/awards/RM24\347\253\236\346\212\200\345\245\226.html" deleted file mode 100644 index 99d2fe59..00000000 --- "a/preview/pr-23/awards/RM24\347\253\236\346\212\200\345\245\226.html" +++ /dev/null @@ -1,507 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -第二十三届全国大学生机器人大赛robomaster2024机甲大师超级对抗赛机器人竞技奖 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - -
- - - - - - - diff --git a/preview/pr-23/awards/RMAward.html b/preview/pr-23/awards/RMAward.html deleted file mode 100644 index 00067bf6..00000000 --- a/preview/pr-23/awards/RMAward.html +++ /dev/null @@ -1,507 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -RoboMaster AWARD 2024 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - -
- - - - - - - diff --git a/preview/pr-23/awards/hero_opensource.html b/preview/pr-23/awards/hero_opensource.html deleted file mode 100644 index 60d846a9..00000000 --- a/preview/pr-23/awards/hero_opensource.html +++ /dev/null @@ -1,507 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -RoboMaster 开源奖 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - -
- - - - - - - diff --git "a/preview/pr-23/awards/\344\270\255\345\233\275\345\244\247\345\255\246\347\224\237\346\225\260\345\255\246\347\253\236\350\265\233.html" "b/preview/pr-23/awards/\344\270\255\345\233\275\345\244\247\345\255\246\347\224\237\346\225\260\345\255\246\347\253\236\350\265\233.html" deleted file mode 100644 index 34de0600..00000000 --- "a/preview/pr-23/awards/\344\270\255\345\233\275\345\244\247\345\255\246\347\224\237\346\225\260\345\255\246\347\253\236\350\265\233.html" +++ /dev/null @@ -1,507 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -中国大学生数学竞赛 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - -
- - - - - - - diff --git "a/preview/pr-23/awards/\345\205\210\350\277\233\346\210\220\345\233\276\346\212\200\346\234\257\344\270\216\344\272\247\345\223\201\344\277\241\346\201\257\345\273\272\346\250\241\345\210\233\346\226\260\345\244\247\350\265\2331.html" "b/preview/pr-23/awards/\345\205\210\350\277\233\346\210\220\345\233\276\346\212\200\346\234\257\344\270\216\344\272\247\345\223\201\344\277\241\346\201\257\345\273\272\346\250\241\345\210\233\346\226\260\345\244\247\350\265\2331.html" deleted file mode 100644 index a9aa4e92..00000000 --- "a/preview/pr-23/awards/\345\205\210\350\277\233\346\210\220\345\233\276\346\212\200\346\234\257\344\270\216\344\272\247\345\223\201\344\277\241\346\201\257\345\273\272\346\250\241\345\210\233\346\226\260\345\244\247\350\265\2331.html" +++ /dev/null @@ -1,507 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -2022年全国大学生先进成图技术与产品信息建模创新大赛 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - -
- - - - - - - diff --git "a/preview/pr-23/awards/\345\244\247\345\224\220\346\235\2571.html" "b/preview/pr-23/awards/\345\244\247\345\224\220\346\235\2571.html" deleted file mode 100644 index 4c463b22..00000000 --- "a/preview/pr-23/awards/\345\244\247\345\224\220\346\235\2571.html" +++ /dev/null @@ -1,507 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -第十一届“大唐杯”全国大学生新一代信息通信技术大赛信息通信工程实践赛道 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - -
- - - - - - - diff --git "a/preview/pr-23/awards/\346\231\272\350\203\275\346\234\272\345\231\250\344\272\272\345\210\233\346\204\217\345\244\247\350\265\2331.html" "b/preview/pr-23/awards/\346\231\272\350\203\275\346\234\272\345\231\250\344\272\272\345\210\233\346\204\217\345\244\247\350\265\2331.html" deleted file mode 100644 index 7175ee0e..00000000 --- "a/preview/pr-23/awards/\346\231\272\350\203\275\346\234\272\345\231\250\344\272\272\345\210\233\346\204\217\345\244\247\350\265\2331.html" +++ /dev/null @@ -1,507 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -智能机器人创意大赛 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - -
- - - - - - - diff --git "a/preview/pr-23/awards/\346\231\272\350\203\275\346\234\272\345\231\250\344\272\272\345\210\233\346\204\217\345\244\247\350\265\2332.html" "b/preview/pr-23/awards/\346\231\272\350\203\275\346\234\272\345\231\250\344\272\272\345\210\233\346\204\217\345\244\247\350\265\2332.html" deleted file mode 100644 index 60317b0c..00000000 --- "a/preview/pr-23/awards/\346\231\272\350\203\275\346\234\272\345\231\250\344\272\272\345\210\233\346\204\217\345\244\247\350\265\2332.html" +++ /dev/null @@ -1,507 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -第七届全国高校智能机器人创意大赛 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - -
- - - - - - - diff --git "a/preview/pr-23/awards/\347\235\277\346\212\227\346\234\272\345\231\250\344\272\272\345\274\200\345\217\221\350\200\205\345\244\247\350\265\233.html" "b/preview/pr-23/awards/\347\235\277\346\212\227\346\234\272\345\231\250\344\272\272\345\274\200\345\217\221\350\200\205\345\244\247\350\265\233.html" deleted file mode 100644 index 303ae351..00000000 --- "a/preview/pr-23/awards/\347\235\277\346\212\227\346\234\272\345\231\250\344\272\272\345\274\200\345\217\221\350\200\205\345\244\247\350\265\233.html" +++ /dev/null @@ -1,507 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -2024睿抗机器人开发者大赛(RAICOM) | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - -
- - - - - - - diff --git "a/preview/pr-23/awards/\347\254\254\345\215\201\344\270\200\345\261\212\345\205\250\345\233\275\345\244\247\345\255\246\347\224\237\346\234\272\346\242\260\345\210\233\346\226\260\350\256\276\350\256\241\345\244\247\350\265\233.html" "b/preview/pr-23/awards/\347\254\254\345\215\201\344\270\200\345\261\212\345\205\250\345\233\275\345\244\247\345\255\246\347\224\237\346\234\272\346\242\260\345\210\233\346\226\260\350\256\276\350\256\241\345\244\247\350\265\233.html" deleted file mode 100644 index ed35351a..00000000 --- "a/preview/pr-23/awards/\347\254\254\345\215\201\344\270\200\345\261\212\345\205\250\345\233\275\345\244\247\345\255\246\347\224\237\346\234\272\346\242\260\345\210\233\346\226\260\350\256\276\350\256\241\345\244\247\350\265\233.html" +++ /dev/null @@ -1,507 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -第十一届全国大学生机械创新设计大赛 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - -
- - - - - - - diff --git "a/preview/pr-23/awards/\347\276\216\345\233\275\346\225\260\345\255\246\345\273\272\346\250\241\345\244\247\350\265\233.html" "b/preview/pr-23/awards/\347\276\216\345\233\275\346\225\260\345\255\246\345\273\272\346\250\241\345\244\247\350\265\233.html" deleted file mode 100644 index 8088f748..00000000 --- "a/preview/pr-23/awards/\347\276\216\345\233\275\346\225\260\345\255\246\345\273\272\346\250\241\345\244\247\350\265\233.html" +++ /dev/null @@ -1,507 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -美国数学建模大赛 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - -
- - - - - - - diff --git a/preview/pr-23/blog/index.html b/preview/pr-23/blog/index.html deleted file mode 100644 index aca80601..00000000 --- a/preview/pr-23/blog/index.html +++ /dev/null @@ -1,716 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -博客 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
-

-博客

- -

团队的技术分享、项目进展、学习笔记等内容。

-
- - - - - -
- - - - - - -
- -
-
- - - - - - -
- RM2024-英雄视觉开源 - - - - - - - - - - - - - - - -

- - -

-
-
-
-
- - -
- - - - - - - diff --git a/preview/pr-23/contact/index.html b/preview/pr-23/contact/index.html deleted file mode 100644 index fa20d101..00000000 --- a/preview/pr-23/contact/index.html +++ /dev/null @@ -1,605 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -联系 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
-

-联系我们

- -

狼牙战队欢迎所有热爱机器人的同学加入!

- -

湖北省武汉市洪山区珞喻路 1037 号 -华中科技大学智能互联网湖北省重点实验室

- - - - -
- - - - - -
- - -

企业赞助或合作事务洽谈,请联系微信:bao1037rm。

-
- - -
- - - - - - - diff --git a/preview/pr-23/feed.xml b/preview/pr-23/feed.xml deleted file mode 100644 index e1938f96..00000000 --- a/preview/pr-23/feed.xml +++ /dev/null @@ -1,323 +0,0 @@ -Jekyll2024-11-16T01:37:42+00:00/preview/pr-23/feed.xmlHUSTLYRM华中科技大学 RoboMaster 狼牙战队RM2024-英雄视觉开源2024-09-27T00:00:00+00:002024-11-16T01:34:33+00:00/preview/pr-23/2024/09/27/rm24hero

- -
- -
-


-
- 华中科技大学 狼牙战队 视觉组 -
-开源链接:https://github.com/HUSTLYRM/HUST_HeroAim_2024 -
- -

效果展示 🎥

- -
-

-全国赛效果 -

- -

-分区赛效果 -

- -
-国赛全程视频: -
- -
- -

功能简介 🔎

- -

本赛季英雄机器人算法开发的功能主要包括前哨站击打、车辆击打辅瞄、绿灯辅助吊射三项。

- -

前哨站击打与车辆击打辅瞄采用了较为广泛使用的延迟击打方案。

- -

绿灯辅助吊射结合先验的距离,通过识别基地顶部的飞镖引导灯辅助吊射。

- -

环境配置 🛠

- -

硬件环境 📡

- - - - - - - - - - - - - - - - - - - - - - - - - - -
硬件型号
车载算力平台NUC11
大恒相机传感器\
镜头8mm 焦段
下位机通信C 板虚拟串口
- -

软件环境 🖥

- -
GCC
-OpenVINO >= 2023.0
-OpenCV
-Eigen
-Sophus
-Glog 
-CeresSolver
-Jsoncpp
-GalaxyCamera
-
- -

由于 yolov8和 yolov10使用了大于 opset11的 op,需要使用 OpenVINO 2023.0以上版本进行编译。具体请参照 OpenVINO官方文档

- -

编译运行 🚀

- -
mkdir build
-cd build
-cmake ..
-make -j8
-./AutoAim
-
- -

框架功能 📦

- -
    -
  1. 使用 OpenVINO 进行深度学习模型的部署
  2. -
  3. 使用 glog 进行日志记录
  4. -
  5. 借助 UDP 协议以及 VOFA+ 工具,进行数据的可视化查看与调试(使用方式见下方开源仓库) -https://github.com/liulog/Debug_udp_VOFA
  6. -
  7. 使用 jsoncpp 进行配置文件的读取,所有因车而异的参数均可通过配置文件进行调整,所有需要调整的参数见 src/utils/tools/init.json
  8. -
- -

重要原理阐述 ♾️

- -

静止靶辅瞄 🎯

- -

目标位姿估计 🎯

- -

对于英雄的辅瞄来说,目标的位姿估计尤为重要。首先我们需要知道目标装甲板中心距离。其次需要知道装甲板的朝向,如果目标装甲板的朝向过于倾斜,就有被识别为小弹丸的风险,故需要对大弹丸的击打区间进行判定。

- -

受限于本赛季装甲板的识别方案,我们装甲板灯条存在一定的取点误差,在 8mm 镜头下, PnP 的距离解算误差可达 20%。由于大弹丸的弹速较低,大弹丸的弹道对距离异常敏感, 20% 的距离误差会造成云台的上下抖动。通过引入均值滤波,我们消除了部分抖动,但是对于更远距离的物体存在严重的误差造成弹道偏移。

- -

弹道方程 ♾️

- -

假设炮弹在空气中飞行,考虑空气阻力和重力作用,我们得到的微分方程可以表示为:

- -

$$ -m \frac{\mathrm dv_y}{\mathrm dt} = -mg - k_1 v v_y -$$

- -

其中 $v_y$ 是垂直方向的速度分量, $v$ 是速度的大小, $m$ 是质量, $g$ 是重力加速度, $k_1$ 是与空气阻力相关的系数。

- -

飞行时间由以下公式给出:

- -

$$ -T = \frac{e ^ {k_1 \cdot d} - 1}{k_1 \cdot v \cdot \cos(\theta)} -$$

- -

其中:

- -
    -
  • $k_1$ 是空气阻力系数相关的常数;
  • -
  • $d$ 是目标的水平距离;
  • -
  • $v$ 是炮弹初速度;
  • -
  • $\theta$ 是俯仰角度。
  • -
- -

炮弹的垂直位移由以下公式给出:

- -

$$ -\delta_z = z - \frac{v \cdot \sin(\theta) \cdot T}{\cos(\theta)} + \frac{0.5 \cdot g \cdot T ^ 2}{\cos ^ 2(\theta)} -$$

- -

其中:

- -
    -
  • $z$ 是目标的高度;
  • -
  • $g$ 是重力加速度;
  • -
  • 其他符号如上定义。
  • -
- -

最终我们使用牛顿迭代法来求解俯仰角度 $\theta$ ,以满足垂直方向的运动方程,具体为:

- -

$$ -\theta_{n+1} = \theta_n - \frac{\delta_z}{f’(\theta)} -$$

- -

其中 $f’(\theta)$ 是垂直方向位移方程对 $\theta$ 的导数。

- -

当目标在世界坐标系下的坐标足够精确时,我们可以用这个方程很好地拟合 42mm 弹丸的飞行轨迹。上述弹道方程中,唯一常数为空气阻力系数,经实验该系数直接使用球体的体积常数就有良好的效果。经过进一步的微调我们将该常数略降低了一些,这与大弹丸表面的凹坑有关。实践上,在 15-16 米每秒的弹速条件下,该方程的主要误差来源于装甲板距离解算的误差。

- -

上述弹道解算代码可见 src/pose_estimate/src/PoseSolver.cpp 中的 solveGimbalPose 函数。

- -

弹道标定 🚀

- -

通过上述控制变量的研究和实验,我们对姿态估计和弹道方程的误差都有了定量的认知。在对英雄弹道标定时,只需要调整相机与云台发射机构的相对误差即可。我们引入了 yaw、 pitch、 roll 三个纬度的相机旋转和一个平移向量描述发射机构和相机之间的误差。

- -

$$ -\boldsymbol P_g=\boldsymbol P_c\boldsymbol R_z(\phi)\boldsymbol R_y(\theta)\boldsymbol R_x(\psi)+\boldsymbol t -$$

- -

其中:

- -
    -
  • $\boldsymbol P_g$ 是装甲板目标在世界坐标系下的坐标
  • -
  • $\boldsymbol P_c$ 是装甲板目标在相机坐标系下的坐标
  • -
  • $\boldsymbol R_z$、 $\boldsymbol R_y$ 、 $\boldsymbol R_x$ 是对应 yaw、 pitch、 roll 的旋转矩阵
  • -
  • $\boldsymbol t$ 是在世界坐标系下从云台发射机构中心到相机光心的平移向量
  • -
- -

该方案实现了对车辆发射过程整体的完整建模,同时保留了可视化调参的方式,只需要调整 $\boldsymbol t$ 和 $\phi, \theta, \psi$ ,可以快速调整。经过实测,在相机正常装配情况下,平移向量仅高度方向敏感,相机的旋转角度可通过将世界坐标系的坐标轴可视化进行标定(见 src/pose_estimate/src/PoseSolver.cpp 中的 solveArmor 函数中的注释部分)。熟练后,仅需 10 分钟可以完成一辆英雄机器人的弹道标定。

- -

该标定算法可见 src/pose_estimate/src/PoseSolver.cpp 中的 Posesolver() 构造函数。

- -

但是该方案也有缺陷,最严重的问题是无法应对倾斜状态下三摩擦轮弹道的自旋。在实践中我们发现,当处于斜坡击打时,由于三摩擦轮对弹丸的受力不均匀,发射出的子弹会产生较大的自旋,该自旋会导致弹道向某方向漂移。且随着倾斜角度的增大,漂移越大。该现象严重影响我们在公路区和小资源岛中间的斜坡处的击打命中率。我们发现该问题后,临时引入了一个与云台 roll 角有关的参数对弹道进行末端修正,解决了这个问题。但该基于末端的修正背离了整体建模的初衷,该修正方法对于近处物体可能造成过修正的问题。

- -

绿灯辅助吊射 🟢

- -

无论是 8 米吊射还是 25 米吊射,在单一平视角度的相机下都几乎无法完整识别装甲板。即便成功识别装甲板,仍会有非常大的解算误差。因此我们设计了一个识别基地顶部绿灯进行辅助吊射的方案。但是绿灯的识别为单点识别,仅依赖于绿灯的识别无法进行姿态解算。我们引入吊射点位距离和高度作为先验知识,结合绿灯的单点识别可以进行姿态估计。

- -

前哨站辅瞄 🎯

- -

本赛季前哨站辅瞄最大的改动在于摒弃了使用先验的转速作为延迟击打参数。经过分析,英雄机器人在前哨站击打时击打区间仅有 80 毫秒左右,超过该区间会造成命中偏差或者被识别为小弹丸。由于我们无法保证自制的前哨站转速与官方前哨站转速完全一致,所以如果使用先验的转速参数,很有可能造成“过拟合”的现象,即使用家中的前哨站可以命中而上场时会被识别为小弹丸或者无法命中。经过实际的测试家中的前哨站与官方给定的参数可能存在 5% 左右的误差,通过调取场上观测日志,我们发现官方前哨站转速本身也会存在 5% 左右的误差,极端情况下,两者叠加可能造成 10% 以上的误差,该误差足以使辅瞄无法命中。因此我们设计算法对前哨站转速去耦合。我们还惊喜地发现,该方案亦可适用于对静止小陀螺的普通步兵进行辅瞄延迟击打,在联盟赛中针对原地旋转的哨兵机器人收获了良好的效果。

- -

前哨站辅瞄还依赖于英雄机器人链路发弹延迟的参数。我们设计了一个测试发弹延迟测定的流程,并实现了发弹延迟 5ms 级别的测定。符合直觉地,弹链的顺滑程度与发弹延迟完全相关。我们通过优化弹链结构,实现了发弹延迟的最小化和稳定。

- -

本赛季英雄机器人前哨站辅瞄算法流程如下。(见 src/pose_estimate/src/PoseSolver.cppantitop 函数)

- -
    -
  1. 拟合前哨站的击打中心。我们设计了一个队列存储每一帧捕获的前哨站装甲板的姿态信息,当队列内装甲板的数量超过一定阈值后,删除距离最远或倾斜角度最大的装甲板。当完整经过第一片扇叶后,前哨站的击打中心即可使用该队列内的所有装甲板的几何平均值得出。
  2. -
  3. 捕获前哨站扇叶经过击打区域的上升沿信号。我们将所有经过击打中心一定距离内的装甲板定义为处于击打区域。每当有扇叶经过该区域时,通过计算该信号的上升沿的时间差即可实现对装甲板旋转速度的估计。
  4. -
  5. 设置延迟击打。当有扇叶经过击打区域时,通过计算弹丸飞行时间结合发弹延迟、前哨站的旋转速度可以得到我们需要延迟击打的时间。
  6. -
- -

上述算法思路非常简单,但需要注意几个问题。

- -
    -
  1. 中心的估计:在我们的深度学习的识别模型中,特定角度下的装甲板会出现取点异常外扩,导致在该角度下 PnP 解算的距离会变近,在上述采用删除距离最远的装甲板的思路中会存在中心点偏移的问题。解决方案是结合倾斜角度进行辅助删除判断。(见 src/pose_estimate/src/PoseSolver.cppantitop 函数)
  2. -
  3. 中心区域的设置:由于 PnP 解算距离误差较大,击打中心实际上可能会出现较大的前后距离误差,如果我们粗暴地设计一个距离范围可能会导致装甲板实际经过击打区域而无触发的情况。数学上可以分析,该问题其实是因为将问题的纬度引入三维导致。我们最终设计了一个基于图像上二维坐标的“距离函数”。这个距离函数对水平方向的变化极为敏感,对竖直方向不敏感。实现了对装甲板经过击打区域的百分百触发。(见 src/pose_estimate/src/PoseSolver.cppantitop 函数)
  4. -
  5. 触发信号的消抖:由于装甲板识别帧率较高,识别过程中可能会在触发边缘反复触发的情况。我们采用和硬件消抖一个原理,设计了一个缓冲区,实现了对触发信号的消抖。(见 src/pose_estimate/src/PoseSolver.cppantitop 函数)
  6. -
  7. 距离增大带来的挑战:随着距离的增大,深度学习模型对装甲板灯条的识别误差也增大,距离解算的误差增大,计算子弹飞行时间的误差增大,弹道的散布增大。上述问题综合下来,可以得出一个结论,随着距离的增大,击打的准确率会呈指数级的下降。实际测试情况也符合理论分析。我们赛季初设计的最远击打为 9 米,我们通过优化识别模型、优化弹道方程、优化弹道最后实现了 7m 的 80% 命中率,达到了我们的设计指标。(见 src/armor_detector/src/Detector.cpp 中识别算法)
  8. -
- -

算法性能、优缺点分析、优化方案 📈

- -

静止靶辅瞄 🎯

- -

静止靶辅瞄的性能实际取决于弹道方程的性能与姿态解算的准确程度。受限于深度学习取点的精度,本赛季 PnP 解算距离误差最大可达 20%,平均为 10% 左右。通过引入均值滤波等手段,一定程度上减少了远距离辅瞄时云台的上下晃动。本赛季静止靶辅瞄实现了在如下指标的 90%命中

- - - - - - - - - - - - - - - - - - - - - - -
参数值 / 单位
自身 roll 倾斜程度(-10,+10)/ °
目标距离(0,10)/m
目标相对高度(-50,50)/cm
- -

目前静止靶辅瞄的适用范围仍然较短,对于超远距离的物体无法识别和辅瞄。此外由于识别的抖动,导致姿态解算存在较大的误差。

- -

下赛季可以着力于两方面进行优化。识别方面采用深度学习 ROI 加传统视觉取灯条中心点的方法,提高识别的精度。远距离辅瞄方面,和雷达结合,利用视觉贴纸,对英雄机器人的赛场位姿进行估计,实现对建筑物的全场的辅助瞄准。

- -

绿灯辅助吊射 🟢

- -

由于对抗中赛场上吊射点位仍然可能在一个小范围内移动,我们需要对这些先验参数进行敏感性分析。

- - - - - - - - - - - - - - - - - - -
参数敏感性( conf=90%)
距离2m
高度60cm
- -

最终该方案因为适应性训练时发现场地内的安全出口的绿灯会造成误识别而没有实际上场。下赛季应当考虑更鲁邦的识别和姿态估计方案。

- -

前哨站辅瞄 🎯

- -

前哨站辅瞄性能指标为前哨站命中率。前哨站命中率受距离影响较大,具体命中率指标如下。

- -

在平地(公路区)或斜坡(小资源岛左侧):

- - - - - - - - - - - - - - - - - - - - - - - - - - -
距离命中率
3m100%
5m92.3%
7m81.5%
9m小于 50%
- -

可以很明显地发现,前哨站辅瞄的性能随着距离的增大显著下降。物理建模分析可知,击打距离与击打命中率是指数级的反比关系。经过我们的不断调优,我们最终实现了在核心击打区域,即公路区域内的极高命中率。经统计,实战 命中率达到了91%(排除因发弹量为负造成的尿弹和前哨站已击毁后的额外击打)。实战击毁前哨站的时间最快为 倒计时6分28秒。实战从落位后到击毁前哨站 最快时间为15秒。实战从拟合结束开始到击毁前哨站 最快为11秒。实战中也尝试了不同距离、不同倾斜角度的辅瞄,均有相当的命中率。

- -

- -

目前前哨站的方案存在的问题是完全摒弃了先验的参数,造成击打前需要有较长的时间( 5-7 秒)进行转速的拟合。下赛季可以着力于结合部分先验的转速知识提高拟合前哨站转速的速度。

- -

致谢 🙏

- -

感谢本赛季狼牙战队视觉组和英雄组的所有成员,感谢他们在这个赛季的努力和付出。

- -

感谢沈阳航空航天大学 TUP 战队以及狼牙战队视觉组的老人们!

- -

联系方式 📇

- -

mail: me@micdz.cn

- -

其他 📚

- -

本赛季本人开发了一个简单的英雄弹道定量分析工具,通过手工标注弹着点,可以计算弹道散布得分,工具尚简陋,希望可以为各校提供一个定量弹道测试的思路。开源链接如下: https://github.com/MicDZ/RM-Ballistic-Analysis

]]>
周晗
\ No newline at end of file diff --git a/preview/pr-23/generate_member.py b/preview/pr-23/generate_member.py deleted file mode 100644 index e6e0233e..00000000 --- a/preview/pr-23/generate_member.py +++ /dev/null @@ -1,32 +0,0 @@ -# 根据 形如 ”名字 职责 类型“的格式保存 members 的 md 格式文件 - -# --- -# name: 名字 -# image: images/member_photo/名字.jpg -# role: -# type: -# links: -# description: -# --- - -import os - -# 输入成员信息 -while True: - str = input() - if str == "": - break - members = str.split("\t") - # 保存成员信息 - file_path = "_members/" + members[0] + ".md" - # 如果文件不存在,创建 - if not os.path.exists(file_path): - with open(file_path, "w") as f: - f.write("---"+ "\n") - f.write("name: " + members[0] + "\n") - f.write("image: images/member_photo/" + members[0] + ".png\n") - f.write("role: " + members[1] + "\n") - f.write("type: " + members[2] + "\n") - f.write("links:\n") - f.write("description:\n") - f.write("---"+ "\n") \ No newline at end of file diff --git a/preview/pr-23/images/assets/noun-wheat-left.svg b/preview/pr-23/images/assets/noun-wheat-left.svg deleted file mode 100644 index 4e8d67a0..00000000 --- a/preview/pr-23/images/assets/noun-wheat-left.svg +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - diff --git a/preview/pr-23/images/assets/noun-wheat-right.svg b/preview/pr-23/images/assets/noun-wheat-right.svg deleted file mode 100644 index 727b88c5..00000000 --- a/preview/pr-23/images/assets/noun-wheat-right.svg +++ /dev/null @@ -1,33 +0,0 @@ - - - - - - - - diff --git a/preview/pr-23/images/background.jpg b/preview/pr-23/images/background.jpg deleted file mode 100644 index b69332cb..00000000 Binary files a/preview/pr-23/images/background.jpg and /dev/null differ diff --git a/preview/pr-23/images/bgvideo.mp4 b/preview/pr-23/images/bgvideo.mp4 deleted file mode 100644 index ed6f8b4b..00000000 Binary files a/preview/pr-23/images/bgvideo.mp4 and /dev/null differ diff --git a/preview/pr-23/images/cheer.jpg b/preview/pr-23/images/cheer.jpg deleted file mode 100644 index 79167dc5..00000000 Binary files a/preview/pr-23/images/cheer.jpg and /dev/null differ diff --git a/preview/pr-23/images/convert.py b/preview/pr-23/images/convert.py deleted file mode 100644 index 190527fa..00000000 --- a/preview/pr-23/images/convert.py +++ /dev/null @@ -1,14 +0,0 @@ -# 读取png图片,将图片黑色变成白色,透明保持不变 -import cv2 -import os - - -image = cv2.imread('images/logo.png', cv2.IMREAD_UNCHANGED) - -for i in range(image.shape[0]): - for j in range(image.shape[1]): - if image[i, j][0] == 0 and image[i, j][1] == 0 and image[i, j][2] == 0: - image[i, j][0] = 255 - image[i, j][1] = 255 - image[i, j][2] = 255 -cv2.imwrite('images/1.png', image) diff --git a/preview/pr-23/images/cooporate.jpeg b/preview/pr-23/images/cooporate.jpeg deleted file mode 100644 index 911e8388..00000000 Binary files a/preview/pr-23/images/cooporate.jpeg and /dev/null differ diff --git a/preview/pr-23/images/eic.png b/preview/pr-23/images/eic.png deleted file mode 100644 index 116d59bb..00000000 Binary files a/preview/pr-23/images/eic.png and /dev/null differ diff --git a/preview/pr-23/images/fallback.svg b/preview/pr-23/images/fallback.svg deleted file mode 100644 index ac12be23..00000000 --- a/preview/pr-23/images/fallback.svg +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - diff --git a/preview/pr-23/images/logo.png b/preview/pr-23/images/logo.png deleted file mode 100644 index 4b68fc0a..00000000 Binary files a/preview/pr-23/images/logo.png and /dev/null differ diff --git a/preview/pr-23/images/logo_black.png b/preview/pr-23/images/logo_black.png deleted file mode 100644 index 8f258125..00000000 Binary files a/preview/pr-23/images/logo_black.png and /dev/null differ diff --git a/preview/pr-23/images/member_photo/rename.py b/preview/pr-23/images/member_photo/rename.py deleted file mode 100644 index 013da7e2..00000000 --- a/preview/pr-23/images/member_photo/rename.py +++ /dev/null @@ -1,10 +0,0 @@ -# 将形如”序号1_名字_XXXXXXXXXX“的文件全部重命名为名字 -import os - -# 读取文件夹下所有文件 -files = os.listdir("images/member_photo") -for file in files: - # 判断文件名是否符合要求 - if file.startswith("序号"): - # 重命名文件 - os.rename("images/member_photo/" + file, "images/member_photo/" + file.split("_")[1] + ".png") \ No newline at end of file diff --git "a/preview/pr-23/images/member_photo/\344\270\201\347\241\225.jpeg" "b/preview/pr-23/images/member_photo/\344\270\201\347\241\225.jpeg" deleted file mode 100644 index bee7f4f8..00000000 Binary files "a/preview/pr-23/images/member_photo/\344\270\201\347\241\225.jpeg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\345\210\230\346\225\254\345\213\213.jpeg" "b/preview/pr-23/images/member_photo/\345\210\230\346\225\254\345\213\213.jpeg" deleted file mode 100644 index 12abe6c4..00000000 Binary files "a/preview/pr-23/images/member_photo/\345\210\230\346\225\254\345\213\213.jpeg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\345\210\230\346\230\216\347\275\241.jpeg" "b/preview/pr-23/images/member_photo/\345\210\230\346\230\216\347\275\241.jpeg" deleted file mode 100644 index 37a67736..00000000 Binary files "a/preview/pr-23/images/member_photo/\345\210\230\346\230\216\347\275\241.jpeg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\345\210\230\346\230\261\350\276\260.jpeg" "b/preview/pr-23/images/member_photo/\345\210\230\346\230\261\350\276\260.jpeg" deleted file mode 100644 index 2601e75e..00000000 Binary files "a/preview/pr-23/images/member_photo/\345\210\230\346\230\261\350\276\260.jpeg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\345\210\230\347\232\223\345\256\207.jpeg" "b/preview/pr-23/images/member_photo/\345\210\230\347\232\223\345\256\207.jpeg" deleted file mode 100644 index 646054e3..00000000 Binary files "a/preview/pr-23/images/member_photo/\345\210\230\347\232\223\345\256\207.jpeg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\345\220\264\347\243\212.jpeg" "b/preview/pr-23/images/member_photo/\345\220\264\347\243\212.jpeg" deleted file mode 100644 index a35f9711..00000000 Binary files "a/preview/pr-23/images/member_photo/\345\220\264\347\243\212.jpeg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\345\220\264\350\257\227\347\274\230.jpeg" "b/preview/pr-23/images/member_photo/\345\220\264\350\257\227\347\274\230.jpeg" deleted file mode 100644 index df4e615d..00000000 Binary files "a/preview/pr-23/images/member_photo/\345\220\264\350\257\227\347\274\230.jpeg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\345\221\250\345\200\215\350\277\233.jpeg" "b/preview/pr-23/images/member_photo/\345\221\250\345\200\215\350\277\233.jpeg" deleted file mode 100644 index 19a511ce..00000000 Binary files "a/preview/pr-23/images/member_photo/\345\221\250\345\200\215\350\277\233.jpeg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\345\221\250\346\231\227.jpeg" "b/preview/pr-23/images/member_photo/\345\221\250\346\231\227.jpeg" deleted file mode 100644 index f3990059..00000000 Binary files "a/preview/pr-23/images/member_photo/\345\221\250\346\231\227.jpeg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\345\224\220\345\255\220\350\210\252.jpeg" "b/preview/pr-23/images/member_photo/\345\224\220\345\255\220\350\210\252.jpeg" deleted file mode 100644 index 5f3960ac..00000000 Binary files "a/preview/pr-23/images/member_photo/\345\224\220\345\255\220\350\210\252.jpeg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\345\224\220\345\256\266\346\266\265.jpeg" "b/preview/pr-23/images/member_photo/\345\224\220\345\256\266\346\266\265.jpeg" deleted file mode 100644 index 79016729..00000000 Binary files "a/preview/pr-23/images/member_photo/\345\224\220\345\256\266\346\266\265.jpeg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\345\262\263\344\275\263\347\222\207.jpeg" "b/preview/pr-23/images/member_photo/\345\262\263\344\275\263\347\222\207.jpeg" deleted file mode 100644 index 505f7ec5..00000000 Binary files "a/preview/pr-23/images/member_photo/\345\262\263\344\275\263\347\222\207.jpeg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\345\272\236\346\230\200\346\207\277.jpeg" "b/preview/pr-23/images/member_photo/\345\272\236\346\230\200\346\207\277.jpeg" deleted file mode 100644 index a8f84755..00000000 Binary files "a/preview/pr-23/images/member_photo/\345\272\236\346\230\200\346\207\277.jpeg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\345\274\240\346\230\255\351\252\217.jpeg" "b/preview/pr-23/images/member_photo/\345\274\240\346\230\255\351\252\217.jpeg" deleted file mode 100644 index 5a697c57..00000000 Binary files "a/preview/pr-23/images/member_photo/\345\274\240\346\230\255\351\252\217.jpeg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\345\274\240\347\250\213\344\272\256.jpeg" "b/preview/pr-23/images/member_photo/\345\274\240\347\250\213\344\272\256.jpeg" deleted file mode 100644 index 68e9aa6b..00000000 Binary files "a/preview/pr-23/images/member_photo/\345\274\240\347\250\213\344\272\256.jpeg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\345\276\220\346\231\266.jpeg" "b/preview/pr-23/images/member_photo/\345\276\220\346\231\266.jpeg" deleted file mode 100644 index a149a0e6..00000000 Binary files "a/preview/pr-23/images/member_photo/\345\276\220\346\231\266.jpeg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\346\210\264\350\205\276\350\266\212.jpeg" "b/preview/pr-23/images/member_photo/\346\210\264\350\205\276\350\266\212.jpeg" deleted file mode 100644 index d1646e65..00000000 Binary files "a/preview/pr-23/images/member_photo/\346\210\264\350\205\276\350\266\212.jpeg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\346\226\275\346\211\277\347\206\231.jpeg" "b/preview/pr-23/images/member_photo/\346\226\275\346\211\277\347\206\231.jpeg" deleted file mode 100644 index 8d51cd97..00000000 Binary files "a/preview/pr-23/images/member_photo/\346\226\275\346\211\277\347\206\231.jpeg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\346\233\276\344\270\226\351\271\217.jpeg" "b/preview/pr-23/images/member_photo/\346\233\276\344\270\226\351\271\217.jpeg" deleted file mode 100644 index be5bcab7..00000000 Binary files "a/preview/pr-23/images/member_photo/\346\233\276\344\270\226\351\271\217.jpeg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\346\233\276\345\226\273\346\261\237.jpeg" "b/preview/pr-23/images/member_photo/\346\233\276\345\226\273\346\261\237.jpeg" deleted file mode 100644 index a3f48272..00000000 Binary files "a/preview/pr-23/images/member_photo/\346\233\276\345\226\273\346\261\237.jpeg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\346\234\261\344\272\221\347\246\217.jpeg" "b/preview/pr-23/images/member_photo/\346\234\261\344\272\221\347\246\217.jpeg" deleted file mode 100644 index 296cd020..00000000 Binary files "a/preview/pr-23/images/member_photo/\346\234\261\344\272\221\347\246\217.jpeg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\346\235\216\344\274\240\346\262\233.jpeg" "b/preview/pr-23/images/member_photo/\346\235\216\344\274\240\346\262\233.jpeg" deleted file mode 100644 index b229e799..00000000 Binary files "a/preview/pr-23/images/member_photo/\346\235\216\344\274\240\346\262\233.jpeg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\346\235\216\346\243\256\351\230\263.jpeg" "b/preview/pr-23/images/member_photo/\346\235\216\346\243\256\351\230\263.jpeg" deleted file mode 100644 index bdd118ef..00000000 Binary files "a/preview/pr-23/images/member_photo/\346\235\216\346\243\256\351\230\263.jpeg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\346\235\216\347\243\212.jpeg" "b/preview/pr-23/images/member_photo/\346\235\216\347\243\212.jpeg" deleted file mode 100644 index 533405ee..00000000 Binary files "a/preview/pr-23/images/member_photo/\346\235\216\347\243\212.jpeg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\346\237\257\344\270\200\345\272\267.jpeg" "b/preview/pr-23/images/member_photo/\346\237\257\344\270\200\345\272\267.jpeg" deleted file mode 100644 index 7ea7d109..00000000 Binary files "a/preview/pr-23/images/member_photo/\346\237\257\344\270\200\345\272\267.jpeg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\346\242\201\346\231\266\346\231\266.jpeg" "b/preview/pr-23/images/member_photo/\346\242\201\346\231\266\346\231\266.jpeg" deleted file mode 100644 index 36b5be13..00000000 Binary files "a/preview/pr-23/images/member_photo/\346\242\201\346\231\266\346\231\266.jpeg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\346\242\201\347\205\234\347\220\233.jpeg" "b/preview/pr-23/images/member_photo/\346\242\201\347\205\234\347\220\233.jpeg" deleted file mode 100644 index fa9c0b70..00000000 Binary files "a/preview/pr-23/images/member_photo/\346\242\201\347\205\234\347\220\233.jpeg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\346\257\233\347\235\277\346\230\225.jpeg" "b/preview/pr-23/images/member_photo/\346\257\233\347\235\277\346\230\225.jpeg" deleted file mode 100644 index e6ffcbb3..00000000 Binary files "a/preview/pr-23/images/member_photo/\346\257\233\347\235\277\346\230\225.jpeg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\346\262\210\347\241\225.png" "b/preview/pr-23/images/member_photo/\346\262\210\347\241\225.png" deleted file mode 100644 index 569b2677..00000000 Binary files "a/preview/pr-23/images/member_photo/\346\262\210\347\241\225.png" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\347\216\213\345\205\264\345\210\232.jpeg" "b/preview/pr-23/images/member_photo/\347\216\213\345\205\264\345\210\232.jpeg" deleted file mode 100644 index d95cce11..00000000 Binary files "a/preview/pr-23/images/member_photo/\347\216\213\345\205\264\345\210\232.jpeg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\347\216\213\345\256\201.jpeg" "b/preview/pr-23/images/member_photo/\347\216\213\345\256\201.jpeg" deleted file mode 100644 index 74d335cd..00000000 Binary files "a/preview/pr-23/images/member_photo/\347\216\213\345\256\201.jpeg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\347\216\213\346\234\235\351\230\263.jpeg" "b/preview/pr-23/images/member_photo/\347\216\213\346\234\235\351\230\263.jpeg" deleted file mode 100644 index 1c0eef0c..00000000 Binary files "a/preview/pr-23/images/member_photo/\347\216\213\346\234\235\351\230\263.jpeg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\347\224\260\347\202\234\347\250\213.jpeg" "b/preview/pr-23/images/member_photo/\347\224\260\347\202\234\347\250\213.jpeg" deleted file mode 100644 index 43185fd4..00000000 Binary files "a/preview/pr-23/images/member_photo/\347\224\260\347\202\234\347\250\213.jpeg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\347\256\200\344\277\212\346\235\260.jpeg" "b/preview/pr-23/images/member_photo/\347\256\200\344\277\212\346\235\260.jpeg" deleted file mode 100644 index dcd48bcf..00000000 Binary files "a/preview/pr-23/images/member_photo/\347\256\200\344\277\212\346\235\260.jpeg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\350\203\241\346\200\235\346\230\212.jpeg" "b/preview/pr-23/images/member_photo/\350\203\241\346\200\235\346\230\212.jpeg" deleted file mode 100644 index e3c3a1db..00000000 Binary files "a/preview/pr-23/images/member_photo/\350\203\241\346\200\235\346\230\212.jpeg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\350\213\217\346\264\213.jpeg" "b/preview/pr-23/images/member_photo/\350\213\217\346\264\213.jpeg" deleted file mode 100644 index 54bbff94..00000000 Binary files "a/preview/pr-23/images/member_photo/\350\213\217\346\264\213.jpeg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\350\246\203\347\264\253\350\210\252.jpeg" "b/preview/pr-23/images/member_photo/\350\246\203\347\264\253\350\210\252.jpeg" deleted file mode 100644 index 05999464..00000000 Binary files "a/preview/pr-23/images/member_photo/\350\246\203\347\264\253\350\210\252.jpeg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\350\260\210\351\224\246\344\271\224.jpeg" "b/preview/pr-23/images/member_photo/\350\260\210\351\224\246\344\271\224.jpeg" deleted file mode 100644 index 4e30818e..00000000 Binary files "a/preview/pr-23/images/member_photo/\350\260\210\351\224\246\344\271\224.jpeg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\350\265\265\345\256\266\350\211\272.jpg" "b/preview/pr-23/images/member_photo/\350\265\265\345\256\266\350\211\272.jpg" deleted file mode 100644 index d732caab..00000000 Binary files "a/preview/pr-23/images/member_photo/\350\265\265\345\256\266\350\211\272.jpg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\351\202\265\345\230\211\351\200\270.jpeg" "b/preview/pr-23/images/member_photo/\351\202\265\345\230\211\351\200\270.jpeg" deleted file mode 100644 index 5889ac25..00000000 Binary files "a/preview/pr-23/images/member_photo/\351\202\265\345\230\211\351\200\270.jpeg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\351\202\265\347\235\277\345\210\235.jpeg" "b/preview/pr-23/images/member_photo/\351\202\265\347\235\277\345\210\235.jpeg" deleted file mode 100644 index 2db6cb10..00000000 Binary files "a/preview/pr-23/images/member_photo/\351\202\265\347\235\277\345\210\235.jpeg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\351\231\210\347\253\236\345\265\230.jpeg" "b/preview/pr-23/images/member_photo/\351\231\210\347\253\236\345\265\230.jpeg" deleted file mode 100644 index 6a77d4b3..00000000 Binary files "a/preview/pr-23/images/member_photo/\351\231\210\347\253\236\345\265\230.jpeg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\351\233\267\351\233\250\346\241\220.jpeg" "b/preview/pr-23/images/member_photo/\351\233\267\351\233\250\346\241\220.jpeg" deleted file mode 100644 index 45f8536c..00000000 Binary files "a/preview/pr-23/images/member_photo/\351\233\267\351\233\250\346\241\220.jpeg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\351\251\254\351\200\270\351\243\236.jpeg" "b/preview/pr-23/images/member_photo/\351\251\254\351\200\270\351\243\236.jpeg" deleted file mode 100644 index d7a0404a..00000000 Binary files "a/preview/pr-23/images/member_photo/\351\251\254\351\200\270\351\243\236.jpeg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\351\253\230\344\274\240\351\221\253.jpeg" "b/preview/pr-23/images/member_photo/\351\253\230\344\274\240\351\221\253.jpeg" deleted file mode 100644 index 35992166..00000000 Binary files "a/preview/pr-23/images/member_photo/\351\253\230\344\274\240\351\221\253.jpeg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\351\253\230\345\244\251\350\241\241.jpeg" "b/preview/pr-23/images/member_photo/\351\253\230\345\244\251\350\241\241.jpeg" deleted file mode 100644 index 9cccd31e..00000000 Binary files "a/preview/pr-23/images/member_photo/\351\253\230\345\244\251\350\241\241.jpeg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\351\253\230\345\256\210\347\220\250.jpeg" "b/preview/pr-23/images/member_photo/\351\253\230\345\256\210\347\220\250.jpeg" deleted file mode 100644 index 92c98ba2..00000000 Binary files "a/preview/pr-23/images/member_photo/\351\253\230\345\256\210\347\220\250.jpeg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\351\253\230\346\242\223\345\262\251.jpeg" "b/preview/pr-23/images/member_photo/\351\253\230\346\242\223\345\262\251.jpeg" deleted file mode 100644 index 2ae05397..00000000 Binary files "a/preview/pr-23/images/member_photo/\351\253\230\346\242\223\345\262\251.jpeg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\351\262\215\344\271\220\346\263\211.jpeg" "b/preview/pr-23/images/member_photo/\351\262\215\344\271\220\346\263\211.jpeg" deleted file mode 100644 index 1b4c1a03..00000000 Binary files "a/preview/pr-23/images/member_photo/\351\262\215\344\271\220\346\263\211.jpeg" and /dev/null differ diff --git "a/preview/pr-23/images/member_photo/\351\273\204\345\256\207\346\266\265.jpeg" "b/preview/pr-23/images/member_photo/\351\273\204\345\256\207\346\266\265.jpeg" deleted file mode 100644 index 638de368..00000000 Binary files "a/preview/pr-23/images/member_photo/\351\273\204\345\256\207\346\266\265.jpeg" and /dev/null differ diff --git a/preview/pr-23/images/news.jpeg b/preview/pr-23/images/news.jpeg deleted file mode 100644 index eb841b40..00000000 Binary files a/preview/pr-23/images/news.jpeg and /dev/null differ diff --git a/preview/pr-23/images/news/xhorse-0.webp b/preview/pr-23/images/news/xhorse-0.webp deleted file mode 100644 index a321fb0e..00000000 Binary files a/preview/pr-23/images/news/xhorse-0.webp and /dev/null differ diff --git a/preview/pr-23/images/news/xhorse-1.webp b/preview/pr-23/images/news/xhorse-1.webp deleted file mode 100644 index 8b47bff6..00000000 Binary files a/preview/pr-23/images/news/xhorse-1.webp and /dev/null differ diff --git a/preview/pr-23/images/news/xhorse-2.webp b/preview/pr-23/images/news/xhorse-2.webp deleted file mode 100644 index 2c36bf51..00000000 Binary files a/preview/pr-23/images/news/xhorse-2.webp and /dev/null differ diff --git a/preview/pr-23/images/news/xhorse-3.webp b/preview/pr-23/images/news/xhorse-3.webp deleted file mode 100644 index 53a27ea6..00000000 Binary files a/preview/pr-23/images/news/xhorse-3.webp and /dev/null differ diff --git a/preview/pr-23/images/news/xhorse-4.webp b/preview/pr-23/images/news/xhorse-4.webp deleted file mode 100644 index 92fe3540..00000000 Binary files a/preview/pr-23/images/news/xhorse-4.webp and /dev/null differ diff --git a/preview/pr-23/images/projects/rm/1.png b/preview/pr-23/images/projects/rm/1.png deleted file mode 100644 index 95cccb09..00000000 Binary files a/preview/pr-23/images/projects/rm/1.png and /dev/null differ diff --git a/preview/pr-23/images/projects/rm/2.png b/preview/pr-23/images/projects/rm/2.png deleted file mode 100644 index 8d292e3a..00000000 Binary files a/preview/pr-23/images/projects/rm/2.png and /dev/null differ diff --git a/preview/pr-23/images/projects/rm/3.png b/preview/pr-23/images/projects/rm/3.png deleted file mode 100644 index d0bc6af9..00000000 Binary files a/preview/pr-23/images/projects/rm/3.png and /dev/null differ diff --git a/preview/pr-23/images/projects/rm/4.png b/preview/pr-23/images/projects/rm/4.png deleted file mode 100644 index 0cb7e695..00000000 Binary files a/preview/pr-23/images/projects/rm/4.png and /dev/null differ diff --git a/preview/pr-23/images/projects/rm/5.png b/preview/pr-23/images/projects/rm/5.png deleted file mode 100644 index dc3c91f8..00000000 Binary files a/preview/pr-23/images/projects/rm/5.png and /dev/null differ diff --git a/preview/pr-23/images/projects/rm/6.png b/preview/pr-23/images/projects/rm/6.png deleted file mode 100644 index af3857bc..00000000 Binary files a/preview/pr-23/images/projects/rm/6.png and /dev/null differ diff --git a/preview/pr-23/images/projects/rm/7.png b/preview/pr-23/images/projects/rm/7.png deleted file mode 100644 index 1152f2dd..00000000 Binary files a/preview/pr-23/images/projects/rm/7.png and /dev/null differ diff --git a/preview/pr-23/images/share.jpg b/preview/pr-23/images/share.jpg deleted file mode 100644 index 268a3410..00000000 Binary files a/preview/pr-23/images/share.jpg and /dev/null differ diff --git a/preview/pr-23/index.html b/preview/pr-23/index.html deleted file mode 100644 index ebd2a7d0..00000000 --- a/preview/pr-23/index.html +++ /dev/null @@ -1,720 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -
- - - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
-

华中科技大学 狼牙战队

- -

华中科技大学RoboMaster团队(狼牙战队)是华中科技大学启明学院创新团队之一,是一个以参加RoboMaster机器人比赛为主,其余竞赛为辅,以培养队员全面综合水平为目标的综合型团队。

- - - - - - -
- - - - - -
- - -

高光时刻

- -
- - 我们的成果 - -
- -

我们的成果

- - -
    -
  • 15年分区赛亚军、季军和第五名,在全国赛均进入全国三十二强;
  • -
  • 16年分区赛第五名,全国赛十六强;
  • -
  • 17年分区赛亚军,全国赛十六强;
  • -
  • 18年分区赛季军,全国赛三十二强;
  • -
  • 19年分区赛八强,全国赛三十二强;
  • -
  • 20年国家级二等奖;
  • -
  • 21年分区赛十六强;
  • -
  • 22年分区赛八强,全国赛国家级一等奖;
  • -
  • 23年分区赛十六强,全国赛四十六强,国家级二等奖;
  • -
  • 24年分区赛殿军,全国赛三十二强,国家级二等奖。
  • -
- - - - -
-
- -
- - 我们的项目 - -
- -

我们的项目

- - -

作为一个多学科交叉的机器人团队,我们与企业、学校等多方面展开合作。推动科技创新,人才培养。

- - - - -
-
- -
- - 我们的成员 - -
- -

我们的成员

- - -

这里聚集了机械、电路、嵌软、算法、运营多方面的人才。

- - - - -
-
- -
- - 我们的新闻 - -
- -

我们的新闻

- - -

我们活跃于各种社会活动,积极展现狼牙风采。

- - - - -
-
-
- - -
- - - - - - - diff --git a/preview/pr-23/members/members.csv b/preview/pr-23/members/members.csv deleted file mode 100644 index f4aeb78d..00000000 --- a/preview/pr-23/members/members.csv +++ /dev/null @@ -1,34 +0,0 @@ -name,affiliation,role,type,time,echelon,grade -周晗,电子信息与通信学院,算法组成员,普通队员,24,23,2022 -田炜程,集成电路学院,队长,普通队员,23/24,22,2020 -王宁,电子信息与通信学院,副队长,普通队员,23/24,22,2020 -邵嘉逸,人文学院,运营组组长,普通队员,24,23,2021 -刘泽旭,机械科学与工程学院,机械组组长,普通队员,23/24,22,2021 -柯一康,机械与科学工程学院,机械组组员,普通队员,23/24,22,2021 -高梓岩,光学与电子信息学院,机械组组员,普通队员,24,23,2022 -施承熙,人工智能与自动化学院,机械组组员,普通队员,24,23,2022 -谈锦乔,电气与电子工程学院,机械组组员,普通队员,24,23,2021 -刘昱辰,光学与电子信息学院,机械组组员,普通队员,24,23,2022 -唐子航,材料科学与工程学院,机械组组员,普通队员,24,23,2022 -李传沛,机械科学与工程学院,机械组组员,普通队员,24,23,2021 -李森阳,电子信息与通信学院,电路组组长,普通队员,24,23,2022 -丁硕,光学与电子信息学院,电路组组员,普通队员,24,23,2021 -高守琨,材料科学与工程学院,电路组组员,普通队员,24,23,2022 -高天衡,电子信息与通信学院,电路组组员,普通队员,24,23,2022 -邵睿初,电子信息与通信学院,嵌软组组长,普通队员,24,23,2021 -鲍乐泉,光学与电子信息学院,嵌软组组员,普通队员,24,23,2021 -刘敬勋,机械与科学工程学院,嵌软组组员,普通队员,24,23,2021 -苏洋,电子信息与通信学院,嵌软组组员,普通队员,24,23,2021 -梁煜琛,材料科学与工程学院,嵌软组组员,普通队员,24,23,2021 -胡思昊 ,电子信息与通信学院,嵌软组组员,普通队员,24,23,2022 -陈竞嵘,电子信息与通信学院,嵌软组组员,普通队员,24,23,2022 -吴磊,机械科学与工程学院,嵌软组组员,普通队员,24,23,2021 -马逸飞,电子信息与通信学院,嵌软组组员,普通队员,24,23,2022 -王朝阳,电子信息与通信学院,嵌软组组员,普通队员,24,23,2022 -张昭骏,计算机科学与技术学院,算法组组长,普通队员,24,23,2021 -李磊,集成电路学院,算法组组员,普通队员,22/23/24,21,2021 -曾世鹏,计算机科学与技术学院,算法组组员,普通队员,24,23,2021 -简俊杰,电子信息与通信学院,算法组组员,普通队员,24,23,2022 -黄宇涵,人工智能与自动化学院,算法组组员,普通队员,24,23,2022 -刘皓宇,船舶海洋与工程学院,电路组组员,普通队员,24,24,2023 -戴腾越,管理学院,运营组组员,普通队员,24,24,2022 \ No newline at end of file diff --git a/preview/pr-23/members/update.py b/preview/pr-23/members/update.py deleted file mode 100644 index 6e84da46..00000000 --- a/preview/pr-23/members/update.py +++ /dev/null @@ -1,69 +0,0 @@ -import os -import pandas as pd -import yaml - -# CSV 文件路径 -CSV_FILE = "/Users/micdz/Projects/langya_website/_members/members.csv" # 你的表格文件 -MARKDOWN_FOLDER = "/Users/micdz/Projects/langya_website/_members" # Markdown 文件所在文件夹 - -def load_csv(file_path): - return pd.read_csv(file_path) - -def update_markdown(md_path, updates): - with open(md_path, 'r', encoding='utf-8') as file: - lines = file.readlines() - - # 找到 YAML 元数据部分 - start, end = None, None - for i, line in enumerate(lines): - if line.strip() == "---": - if start is None: - start = i - else: - end = i - break - - # 如果没有找到 YAML 元数据,则跳过文件 - if start is None or end is None: - print(f"File {md_path} has no YAML metadata.") - return - - # 解析 YAML - yaml_data = yaml.safe_load("".join(lines[start + 1:end])) - - # 更新 YAML 中的字段 - for key, value in updates.items(): - yaml_data[key] = value # 如果字段缺失则添加 - - - # 写回更新的内容 - with open(md_path, 'w', encoding='utf-8') as file: - file.writelines(lines[:start + 1]) - yaml.dump(yaml_data, file, allow_unicode=True) - file.writelines(lines[end:]) - -def main(): - # 读取 CSV 文件 - df = load_csv(CSV_FILE) - - for index, row in df.iterrows(): - name = row['name'] - updates = { - 'affiliation': row['affiliation'], - 'role': row['role'], - 'type': row['type'], - 'time': row['time'], - 'echelon': row['echelon'], - 'grade': row['grade'], - } - - # 根据名字找到对应的 Markdown 文件 - md_path = os.path.join(MARKDOWN_FOLDER, f"{name}.md") - if os.path.exists(md_path): - update_markdown(md_path, updates) - print(f"Updated {md_path}") - else: - print(f"File {md_path} not found.") - -if __name__ == "__main__": - main() \ No newline at end of file diff --git "a/preview/pr-23/members/\344\270\201\347\241\225.html" "b/preview/pr-23/members/\344\270\201\347\241\225.html" deleted file mode 100644 index 2fe1a1e2..00000000 --- "a/preview/pr-23/members/\344\270\201\347\241\225.html" +++ /dev/null @@ -1,759 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -丁硕 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- -
- - - - - -
- - - - - -

荣誉成就

- - - - - - - - - - - - - - - - - - - - - -
- -
- - - - - - - - - - -
- - - - - - - - -
- - 中国大学生数学竞赛 - -
- -
- - 省级 - - - 一等奖 - -
- -
- - - 2023年11月 - -
- -
- -
- -
- - 成员: - - - - - 丁硕 - 丁硕 - - - - -
- -
- - -#f7c44d - - - - -
-
-
- - - - - -
- - - - - - - - - - - - - -

- - 查看 丁硕 发布的博文 - -

-
- - -
- - - - - - - diff --git "a/preview/pr-23/members/\345\210\230\346\225\254\345\213\213.html" "b/preview/pr-23/members/\345\210\230\346\225\254\345\213\213.html" deleted file mode 100644 index 477042e2..00000000 --- "a/preview/pr-23/members/\345\210\230\346\225\254\345\213\213.html" +++ /dev/null @@ -1,602 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -刘敬勋 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- -
- - - - - -
- - - - - - - - - - - - - - - -

- - 查看 刘敬勋 发布的博文 - -

-
- - -
- - - - - - - diff --git "a/preview/pr-23/members/\345\210\230\346\230\216\347\275\241.html" "b/preview/pr-23/members/\345\210\230\346\230\216\347\275\241.html" deleted file mode 100644 index de0c0a2e..00000000 --- "a/preview/pr-23/members/\345\210\230\346\230\216\347\275\241.html" +++ /dev/null @@ -1,628 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -刘明罡 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- - - -

华中科技大学 电子信息与通信学院 电子工程系

- -

邮件: liuminggang@hust.edu.cn

- -

地址: 湖北省 武汉市 洪山区 珞瑜路1037号 华中科技大学 东17楼

- -

华中科技大学教师主页:http://faculty.hust.edu.cn/liuminggang

- -

研究方向:

- -

●分布式天线阵相参合成 ●相控阵天线测试 ●有限扫描稀疏阵列

- -
[●新型相控阵架构](http://faculty.hust.edu.cn/liuminggang/zh_CN/yjfx/2457602/content/7170.htm#yjfx)                          [●相控阵天线技术与系统](http://faculty.hust.edu.cn/liuminggang/zh_CN/yjfx/2457602/content/6920.htm#yjfx)
-
-
- - - - - -
- - -

教育经历

- -

2003年7月,毕业于华中科技大学电子信息工程系,获得学士学位;2009年1月,毕业于清华大学电子工程系,获得博士学位。2009年2月,入职中国电子科技集团公司第十四研究所,长期从事大型高频有源相控阵天线、毫米波相控阵天线、电磁散射等相关技术的研究和产品开发,完成了一系列重点项目。2014年~2017年,任天线微波专业部阵面总体室副主任。2022年9月,入职华中科技大学电子信息与通信学院。

-
- - - - - -
- - - - - - - - - - - - - - - -

- - 查看 刘明罡 发布的博文 - -

-
- - -
- - - - - - - diff --git "a/preview/pr-23/members/\345\210\230\346\230\261\350\276\260.html" "b/preview/pr-23/members/\345\210\230\346\230\261\350\276\260.html" deleted file mode 100644 index e4789fbd..00000000 --- "a/preview/pr-23/members/\345\210\230\346\230\261\350\276\260.html" +++ /dev/null @@ -1,602 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -刘昱辰 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- -
- - - - - -
- - - - - - - - - - - - - - - -

- - 查看 刘昱辰 发布的博文 - -

-
- - -
- - - - - - - diff --git "a/preview/pr-23/members/\345\210\230\346\263\275\346\227\255.html" "b/preview/pr-23/members/\345\210\230\346\263\275\346\227\255.html" deleted file mode 100644 index a4bc6ba5..00000000 --- "a/preview/pr-23/members/\345\210\230\346\263\275\346\227\255.html" +++ /dev/null @@ -1,602 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -刘泽旭 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- -
- - - - - -
- - - - - - - - - - - - - - - -

- - 查看 刘泽旭 发布的博文 - -

-
- - -
- - - - - - - diff --git "a/preview/pr-23/members/\345\210\230\347\232\223\345\256\207.html" "b/preview/pr-23/members/\345\210\230\347\232\223\345\256\207.html" deleted file mode 100644 index d040e760..00000000 --- "a/preview/pr-23/members/\345\210\230\347\232\223\345\256\207.html" +++ /dev/null @@ -1,601 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -刘皓宇 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- - - -

全狼牙最帅的人的守护者

-
- - - - - -
- - - - - - - - - - - - - - - -

- - 查看 刘皓宇 发布的博文 - -

-
- - -
- - - - - - - diff --git "a/preview/pr-23/members/\345\220\264\347\243\212.html" "b/preview/pr-23/members/\345\220\264\347\243\212.html" deleted file mode 100644 index 9ab8786d..00000000 --- "a/preview/pr-23/members/\345\220\264\347\243\212.html" +++ /dev/null @@ -1,602 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -吴磊 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- -
- - - - - -
- - - - - - - - - - - - - - - -

- - 查看 吴磊 发布的博文 - -

-
- - -
- - - - - - - diff --git "a/preview/pr-23/members/\345\221\250\345\200\215\350\277\233.html" "b/preview/pr-23/members/\345\221\250\345\200\215\350\277\233.html" deleted file mode 100644 index 79c42c55..00000000 --- "a/preview/pr-23/members/\345\221\250\345\200\215\350\277\233.html" +++ /dev/null @@ -1,767 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -周倍进 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- -
- - - - - -
- - - - - -

荣誉成就

- - - - - - - - - - - - - - - - - - - - - -
- -
- - - - - - - - - - -
- - - - - - - - -
- - 第六届全国大学生嵌入式芯片与系统设计竞赛 - -
- -
- - 国家级 - - - 一等奖 - -
- -
- - - 2023年08月 - -
- -
- - 有氧吧 - 让每个人都能享受到专业的有氧运动指导 - -
- -
- - 成员: - - - - 刘景宇 - - - , - - - - - 周倍进 - 周倍进 - - - , - - - - 张嘉航 - - - - -
- -
- - -#f7c44d - - - - -
-
-
- - - - - -
- - - - - - - - - - - - - -

- - 查看 周倍进 发布的博文 - -

-
- - -
- - - - - - - diff --git "a/preview/pr-23/members/\345\221\250\346\231\227.html" "b/preview/pr-23/members/\345\221\250\346\231\227.html" deleted file mode 100644 index ba193bac..00000000 --- "a/preview/pr-23/members/\345\221\250\346\231\227.html" +++ /dev/null @@ -1,1281 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -周晗 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- - - -

24赛季英雄操作手,24赛季主要负责英雄算法、识别算法优化。

-
- - - - - -
- - - - - -

荣誉成就

- - - - - - - - - -

2024

- - - - - - - - - - - - - - -
- -
- - - - - - - - - - -
- - - - - - - - -
- - 第七届全国大学生嵌入式芯片与系统设计竞赛 - -
- -
- - 国家级 - - - 一等奖,广和通智联杯,广和通企业现金奖 - -
- -
- - - 2024年11月 - -
- -
- - “智巡者”边云协同道路损伤监控系统——边缘侧,检测模块利用AI视觉和陀螺仪传感,识别路面损害并采集道路状况;定位模块依靠GNSS匹配伤损区域位置信息;通信模块将检测信息通过5G网络实时上传至云服务器。云端上,以城市热力图等形式直观显示道路状况,同时计算行业标准PCI(路面损坏状况指数JTG 205210—2018),预估预算,并提供科学道路养护方案。 - -
- -
- - 成员: - - - - - 曾世鹏 - 曾世鹏 - - - , - - - - - 周晗 - 周晗 - - - , - - - - - 黄宇涵 - 黄宇涵 - - - - -
- -
- - -#f7c44d - - - - -
-
- - - - - - - - - - - - -
- -
- - - - - - - - - - -
- - - - - - - - -
- - RoboMaster 开源奖 - -
- -
- - - 优秀奖 - -
- -
- - - 2024年10月 - -
- -
- - 在RoboMaster论坛及官网等渠道将核心技术或运营管理方法开源,推进RoboMaster大赛的发展及弘扬工程师文化与精神。 - -
- -
- - 成员: - - - - - 周晗 - 周晗 - - - , - - - - - 胡思昊 - 胡思昊 - - - - -
- -
- - -#f7c44d - - - - -
-
- - - - - - - - - - - - -
- -
- - - - - - - - - - -
- - - - - - - - -
- - 2024睿抗机器人开发者大赛(RAICOM) - -
- -
- - 国家级 - - - 二等奖 - -
- -
- - - 2024年08月 - -
- -
- -
- -
- - 成员: - - - - - 曾世鹏 - 曾世鹏 - - - , - - - - 刘至忠 - - - , - - - - - 周晗 - 周晗 - - - - -
- -
- - -#e0e0e0 - - - - -
-
- - - - - - -

2023

- - - - - - - - - - - - - - -
- -
- - - - - - - - - - -
- - - - - - - - -
- - 第五届全球校园人工智能算法精英大赛 - -
- -
- - 国家级 - - - 一等奖 - -
- -
- - - 2023年11月 - -
- -
- -
- -
- - 成员: - - - - 刘至忠 - - - , - - - - - 曾世鹏 - 曾世鹏 - - - , - - - - - 周晗 - 周晗 - - - , - - - - - 黄宇涵 - 黄宇涵 - - - , - - - - - 简俊杰 - 简俊杰 - - - , - - - - - 张昭骏 - 张昭骏 - - - - -
- -
- - -#f7c44d - - - - -
-
-
- - - - - -
- - - - - - - - - - - - - -

- - 查看 周晗 发布的博文 - -

-
- - -
- - - - - - - diff --git "a/preview/pr-23/members/\345\224\220\345\255\220\350\210\252.html" "b/preview/pr-23/members/\345\224\220\345\255\220\350\210\252.html" deleted file mode 100644 index 0c621936..00000000 --- "a/preview/pr-23/members/\345\224\220\345\255\220\350\210\252.html" +++ /dev/null @@ -1,608 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -唐子航 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- - - -

24赛季国赛英雄操作手

-
- - - - - -
- - - - - - - - - - - - - - - -

- - 查看 唐子航 发布的博文 - -

-
- - -
- - - - - - - diff --git "a/preview/pr-23/members/\345\262\263\344\275\263\347\222\207.html" "b/preview/pr-23/members/\345\262\263\344\275\263\347\222\207.html" deleted file mode 100644 index 240f1f46..00000000 --- "a/preview/pr-23/members/\345\262\263\344\275\263\347\222\207.html" +++ /dev/null @@ -1,591 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -岳佳璇 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- -
- - - - - -
- - - - - - - - - - - - - - - -

- - 查看 岳佳璇 发布的博文 - -

-
- - -
- - - - - - - diff --git "a/preview/pr-23/members/\345\274\240\346\230\255\351\252\217.html" "b/preview/pr-23/members/\345\274\240\346\230\255\351\252\217.html" deleted file mode 100644 index c71306e2..00000000 --- "a/preview/pr-23/members/\345\274\240\346\230\255\351\252\217.html" +++ /dev/null @@ -1,602 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -张昭骏 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- -
- - - - - -
- - - - - - - - - - - - - - - -

- - 查看 张昭骏 发布的博文 - -

-
- - -
- - - - - - - diff --git "a/preview/pr-23/members/\345\276\220\346\231\266.html" "b/preview/pr-23/members/\345\276\220\346\231\266.html" deleted file mode 100644 index 0b33a3d2..00000000 --- "a/preview/pr-23/members/\345\276\220\346\231\266.html" +++ /dev/null @@ -1,631 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -徐晶 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- - - -

华中科技大学 电子信息与通信学院 电子工程系

- -

邮件: xujing@hust.edu.cn

- -

地址: 湖北省 武汉市 洪山区 珞瑜路1037号 华中科技大学 东17楼

- -

华中科技大学电子信息与通信工程学院教师主页:https://eic.hust.edu.cn/aprofessor/xujing/

- -

研究方向:

- -

●低功耗物联网 ●无线网络取证

- -

●智慧教育 ●大数据分析

-
- - - - - -
- - -

教育经历

- -

2011年于华中科技大学获得信息与通信工程博士学位。

- -

2001年至今,在华中科技大学电子信息与通信学院工作;

- -

2013-2014年期间,在美国密西根大学访学。

-
- - - - - -
- - - - - - - - - - - - - - - -

- - 查看 徐晶 发布的博文 - -

-
- - -
- - - - - - - diff --git "a/preview/pr-23/members/\346\210\264\350\205\276\350\266\212.html" "b/preview/pr-23/members/\346\210\264\350\205\276\350\266\212.html" deleted file mode 100644 index a84289de..00000000 --- "a/preview/pr-23/members/\346\210\264\350\205\276\350\266\212.html" +++ /dev/null @@ -1,608 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -戴腾越 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- -
- - - - - -
- - - - - -

荣誉成就

-
- - - - - -
- - - - - - - - - - - - - -

- - 查看 戴腾越 发布的博文 - -

-
- - -
- - - - - - - diff --git "a/preview/pr-23/members/\346\226\207\345\215\232\351\200\232.html" "b/preview/pr-23/members/\346\226\207\345\215\232\351\200\232.html" deleted file mode 100644 index c7a4b5ba..00000000 --- "a/preview/pr-23/members/\346\226\207\345\215\232\351\200\232.html" +++ /dev/null @@ -1,591 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -文博通 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- -
- - - - - -
- - - - - - - - - - - - - - - -

- - 查看 文博通 发布的博文 - -

-
- - -
- - - - - - - diff --git "a/preview/pr-23/members/\346\226\271\346\235\260\346\230\216.html" "b/preview/pr-23/members/\346\226\271\346\235\260\346\230\216.html" deleted file mode 100644 index 885cb22e..00000000 --- "a/preview/pr-23/members/\346\226\271\346\235\260\346\230\216.html" +++ /dev/null @@ -1,680 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -方杰明 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- - - -

方杰民:在科研“修行”中不断突破自我

- -

在华中科技大学读本科时,方杰民就是不少同学眼中的技术“大咖”。那时,他担任RoboMaster机器人团队队长,带领一群志同道合、技术狂热的“战友”一起研发机器人。

- -

如今,方杰民已是华中科技大学电子信息与通信学院2023届博士毕业生。2018年,他在导师的引领下,选择了基于国产AI芯片平台,开启高效率计算机视觉识别的研究。

- -

这个领域要面对国外强大的竞争对手,“它们的计算资源对绝大多数科研团队来说都是难以企及的”。为了取得实验突破,方杰民几乎就住在实验室,甚至曾“三天两夜只睡了几个小时”。

- -

方杰民解释说,研究过程中灵感和想法的迸发非常重要,待在实验室可以方便自己把想法立马记录下来,并验证其可行性。

- -

经过长期探索和反复实验,方杰民创新性地提出了快速神经网络自适应方法,在语义分割上的搜索速度领先国外相关知名企业,其研究成果后续发表在多个顶级期刊,获得了学术同行的高度评价。

- -

方杰民将研究过程比作一场漫长的“修行”,“在这场修行中,每个阶段的挑战都不一样,对研究问题的认知也越来越深入”。 -今后,方杰民希望在通用模型设计和三维视觉上取得突破进展,实现算法超越,为加快实现高水平科技自立自强贡献青春力量。

- -

竞赛

- - -

荣誉

- - -
- - - - - -
- - - - - - - - - - - - - - - -

- - 查看 方杰明 发布的博文 - -

-
- - -
- - - - - - - diff --git "a/preview/pr-23/members/\346\226\275\346\211\277\347\206\231.html" "b/preview/pr-23/members/\346\226\275\346\211\277\347\206\231.html" deleted file mode 100644 index b799bc61..00000000 --- "a/preview/pr-23/members/\346\226\275\346\211\277\347\206\231.html" +++ /dev/null @@ -1,602 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -施承熙 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- -
- - - - - -
- - - - - - - - - - - - - - - -

- - 查看 施承熙 发布的博文 - -

-
- - -
- - - - - - - diff --git "a/preview/pr-23/members/\346\233\276\344\270\226\351\271\217.html" "b/preview/pr-23/members/\346\233\276\344\270\226\351\271\217.html" deleted file mode 100644 index 4d381504..00000000 --- "a/preview/pr-23/members/\346\233\276\344\270\226\351\271\217.html" +++ /dev/null @@ -1,1384 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -曾世鹏 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- - - -

狼牙最可爱的女孩子

-
- - - - - -
- - - - - -

荣誉成就

- - - - - - - - - -

2024

- - - - - - - - - - - - - - -
- -
- - - - - - - - - - -
- - - - - - - - -
- - 第七届全国大学生嵌入式芯片与系统设计竞赛 - -
- -
- - 国家级 - - - 一等奖,广和通智联杯,广和通企业现金奖 - -
- -
- - - 2024年11月 - -
- -
- - “智巡者”边云协同道路损伤监控系统——边缘侧,检测模块利用AI视觉和陀螺仪传感,识别路面损害并采集道路状况;定位模块依靠GNSS匹配伤损区域位置信息;通信模块将检测信息通过5G网络实时上传至云服务器。云端上,以城市热力图等形式直观显示道路状况,同时计算行业标准PCI(路面损坏状况指数JTG 205210—2018),预估预算,并提供科学道路养护方案。 - -
- -
- - 成员: - - - - - 曾世鹏 - 曾世鹏 - - - , - - - - - 周晗 - 周晗 - - - , - - - - - 黄宇涵 - 黄宇涵 - - - - -
- -
- - -#f7c44d - - - - -
-
- - - - - - - - - - - - -
- -
- - - - - - - - - - -
- - - - - - - - -
- - 2024睿抗机器人开发者大赛(RAICOM) - -
- -
- - 国家级 - - - 二等奖 - -
- -
- - - 2024年08月 - -
- -
- -
- -
- - 成员: - - - - - 曾世鹏 - 曾世鹏 - - - , - - - - 刘至忠 - - - , - - - - - 周晗 - 周晗 - - - - -
- -
- - -#e0e0e0 - - - - -
-
- - - - - - - - - - - - -
- -
- - - - - - - - - - -
- - - - - - - - -
- - 第十一届“大唐杯”全国大学生新一代信息通信技术大赛信息通信工程实践赛道 - -
- -
- - 国家级 - - - 国家三等奖,省级二等奖 - -
- -
- - - 2024年08月 - -
- -
- -
- -
- - 成员: - - - - - 曾世鹏 - 曾世鹏 - - - , - - - - 金钊 - - - - -
- -
- - -#e0e0e0 - - - - -
-
- - - - - - - - - - - - -
- -
- - - - - - - - - - -
- - - - - - - - -
- - 第二十三届全国大学生机器人大赛robomaster2024机甲大师超级对抗赛机器人竞技奖 - -
- -
- - 国家级 - - - 一等奖 - -
- -
- - - 2024年08月 - -
- -
- -
- -
- - 成员: - - - - - 曾世鹏 - 曾世鹏 - - - , - - - - 刘至忠 - - - - -
- -
- - -#f7c44d - - - - -
-
- - - - - - -

2023

- - - - - - - - - - - - - - -
- -
- - - - - - - - - - -
- - - - - - - - -
- - 第五届全球校园人工智能算法精英大赛 - -
- -
- - 国家级 - - - 一等奖 - -
- -
- - - 2023年11月 - -
- -
- -
- -
- - 成员: - - - - 刘至忠 - - - , - - - - - 曾世鹏 - 曾世鹏 - - - , - - - - - 周晗 - 周晗 - - - , - - - - - 黄宇涵 - 黄宇涵 - - - , - - - - - 简俊杰 - 简俊杰 - - - , - - - - - 张昭骏 - 张昭骏 - - - - -
- -
- - -#f7c44d - - - - -
-
-
- - - - - -
- - - - - - - - - - - - - -

- - 查看 曾世鹏 发布的博文 - -

-
- - -
- - - - - - - diff --git "a/preview/pr-23/members/\346\233\276\345\226\273\346\261\237.html" "b/preview/pr-23/members/\346\233\276\345\226\273\346\261\237.html" deleted file mode 100644 index cc5a8ad2..00000000 --- "a/preview/pr-23/members/\346\233\276\345\226\273\346\261\237.html" +++ /dev/null @@ -1,605 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -曾喻江 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- - - -

华中科技大学,电子信息与通信学院,教学实验中心

- -

邮箱:zengyj@hust.edu.cn

- -

地址:湖北省武汉市华中科技大学东17楼F301

- -

研究方向:AI机器人、智能硬件、边缘计算

-
- - - - - -
- - - - - - - - - - - - - - - -

- - 查看 曾喻江 发布的博文 - -

-
- - -
- - - - - - - diff --git "a/preview/pr-23/members/\346\234\261\344\272\221\347\246\217.html" "b/preview/pr-23/members/\346\234\261\344\272\221\347\246\217.html" deleted file mode 100644 index 8f3f701f..00000000 --- "a/preview/pr-23/members/\346\234\261\344\272\221\347\246\217.html" +++ /dev/null @@ -1,775 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -朱云福 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- -
- - - - - -
- - - - - -

荣誉成就

- - - - - - - - - - - - - - - - - - - - - -
- -
- - - - - - - - - - -
- - - - - - - - -
- - 第七届全国大学生嵌入式芯片与系统设计竞赛 - -
- -
- - 国家级 - - - 三等奖 - -
- -
- - - 2024年08月 - -
- -
- - “火眼金睛”智慧医疗守护精灵 - -
- -
- - 成员: - - - - - 朱云福 - 朱云福 - - - , - - - - 敬双 - - - , - - - - 贾茹婷 - - - - -
- -
- - -#7a4c10 - - - - -
-
-
- - - - - -
- - - - - - - - - - - - - -

- - 查看 朱云福 发布的博文 - -

-
- - -
- - - - - - - diff --git "a/preview/pr-23/members/\346\235\216\344\274\240\346\262\233.html" "b/preview/pr-23/members/\346\235\216\344\274\240\346\262\233.html" deleted file mode 100644 index 75e1ee5b..00000000 --- "a/preview/pr-23/members/\346\235\216\344\274\240\346\262\233.html" +++ /dev/null @@ -1,602 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -李传沛 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- -
- - - - - -
- - - - - - - - - - - - - - - -

- - 查看 李传沛 发布的博文 - -

-
- - -
- - - - - - - diff --git "a/preview/pr-23/members/\346\235\216\346\243\256\351\230\263.html" "b/preview/pr-23/members/\346\235\216\346\243\256\351\230\263.html" deleted file mode 100644 index 5515ae4f..00000000 --- "a/preview/pr-23/members/\346\235\216\346\243\256\351\230\263.html" +++ /dev/null @@ -1,602 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -李森阳 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- -
- - - - - -
- - - - - - - - - - - - - - - -

- - 查看 李森阳 发布的博文 - -

-
- - -
- - - - - - - diff --git "a/preview/pr-23/members/\346\235\216\347\243\212.html" "b/preview/pr-23/members/\346\235\216\347\243\212.html" deleted file mode 100644 index 39a957f3..00000000 --- "a/preview/pr-23/members/\346\235\216\347\243\212.html" +++ /dev/null @@ -1,602 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -李磊 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- -
- - - - - -
- - - - - - - - - - - - - - - -

- - 查看 李磊 发布的博文 - -

-
- - -
- - - - - - - diff --git "a/preview/pr-23/members/\346\235\216\350\224\232\346\230\216.html" "b/preview/pr-23/members/\346\235\216\350\224\232\346\230\216.html" deleted file mode 100644 index a45df641..00000000 --- "a/preview/pr-23/members/\346\235\216\350\224\232\346\230\216.html" +++ /dev/null @@ -1,593 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -李蔚明 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- -
- - - - - -
- - - - - - - - - - - - - - - -

- - 查看 李蔚明 发布的博文 - -

-
- - -
- - - - - - - diff --git "a/preview/pr-23/members/\346\237\257\344\270\200\345\272\267.html" "b/preview/pr-23/members/\346\237\257\344\270\200\345\272\267.html" deleted file mode 100644 index 2c163185..00000000 --- "a/preview/pr-23/members/\346\237\257\344\270\200\345\272\267.html" +++ /dev/null @@ -1,1061 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -柯一康 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- - - -

全狼牙最帅的人的追求者

-
- - - - - -
- -
- - - - - -
- - - - - -

荣誉成就

- - - - - - - - - -

2024

- - - - - - - - - - - - - - -
- -
- - - - - - - - - - -
- - - - - - - - -
- - 第七届全国高校智能机器人创意大赛 - -
- -
- - 国家级 - - - 三等奖 - -
- -
- - - 2024年08月 - -
- -
- -
- -
- - 成员: - - - - 张哲震 - - - , - - - - - 柯一康 - 柯一康 - - - , - - - - 王欢 - - - - -
- -
- - -#7a4c10 - - - - -
-
- - - - - - - - - - - - -
- -
- - - - - - - - - - -
- - - - - - - - -
- - 第十一届全国大学生机械创新设计大赛 - -
- -
- - 国家级 - - - 一等奖 - -
- -
- - - 2024年07月 - -
- -
- - 设计了用于大棚内小青菜收割的小型农业机械设备。利用偏置的曲柄摇杆机构设计切割装置,实现双刀错动,切割小青菜根部。通过链传动及齿轮传动实现车轮与传送带的反向转动来移动,调节各级减速比实现车体前进线速度等于传送带转动线速度,并且采用锯齿状车轮以及基于同步带和锥齿轮传动的差速器机构防止打滑。 - -
- -
- - 成员: - - - - - 柯一康 - 柯一康 - - - - -
- -
- - -#f7c44d - - - - -
-
- - - - - - -

2023

- - - - - - - - - - - - - - -
- -
- - - - - - - - - - -
- - - - - - - - -
- - 第十六届全国三维数字化创新设计大赛 - -
- -
- - 国家级 - - - 一等奖,“龙鼎大奖” - -
- -
- - - 2023年11月 - -
- -
- - 机械臂夹具设计与数控机床操作 - -
- -
- - 成员: - - - - - 柯一康 - 柯一康 - - - - -
- -
- - -#f7c44d - - - - -
-
-
- - - - - -
- - - - - - - - - - - - - -

- - 查看 柯一康 发布的博文 - -

-
- - -
- - - - - - - diff --git "a/preview/pr-23/members/\346\242\201\347\205\234\347\220\233.html" "b/preview/pr-23/members/\346\242\201\347\205\234\347\220\233.html" deleted file mode 100644 index 5e7ddc92..00000000 --- "a/preview/pr-23/members/\346\242\201\347\205\234\347\220\233.html" +++ /dev/null @@ -1,602 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -梁煜琛 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- -
- - - - - -
- - - - - - - - - - - - - - - -

- - 查看 梁煜琛 发布的博文 - -

-
- - -
- - - - - - - diff --git "a/preview/pr-23/members/\347\216\213\345\205\264\345\210\232.html" "b/preview/pr-23/members/\347\216\213\345\205\264\345\210\232.html" deleted file mode 100644 index fa7d943e..00000000 --- "a/preview/pr-23/members/\347\216\213\345\205\264\345\210\232.html" +++ /dev/null @@ -1,657 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -王兴刚 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- - - -

华中科技大学 电子信息与通信学院 人工智能研究所

- -

邮件: xgwang@hust.edu.cn

- -

地址: 湖北省 武汉市 洪山区 珞瑜路1037号 华中科技大学 东17楼 C402室

- -

华中科技大学教师主页:http://faculty.hust.edu.cn/xwang

- -

研究方向:计算机视觉、深度学习,重点在于:基座模型、视觉表征学习、目标检测分割跟踪

-
- - - - - -
- - -

教育经历

- -

他分别于2014年和2009年在华中科技大学电信学院获得博士和学士学位,导师为刘文予教授和白翔教授。在他的博士研究生阶段,他曾在美国加州大学洛杉矶分校(UCLA)和天普大学访问学习,其导师分别为Prof. Alan Yuille和Prof. Longin Latecki。他也曾在微软亚洲研究院视觉计算组实习,其导师为屠卓文教授。

-
- - - - - -
- - - - - - - - - - - - - - - -

- - 查看 王兴刚 发布的博文 - -

-
- - -
- - - - - - - diff --git "a/preview/pr-23/members/\347\216\213\345\256\201.html" "b/preview/pr-23/members/\347\216\213\345\256\201.html" deleted file mode 100644 index e141b161..00000000 --- "a/preview/pr-23/members/\347\216\213\345\256\201.html" +++ /dev/null @@ -1,605 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -王宁 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- -
- - - - - -
- - - - - - - - - - - - - - - -

- - 查看 王宁 发布的博文 - -

-
- - -
- - - - - - - diff --git "a/preview/pr-23/members/\347\216\213\346\234\235\351\230\263.html" "b/preview/pr-23/members/\347\216\213\346\234\235\351\230\263.html" deleted file mode 100644 index 47035c32..00000000 --- "a/preview/pr-23/members/\347\216\213\346\234\235\351\230\263.html" +++ /dev/null @@ -1,602 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -王朝阳 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- -
- - - - - -
- - - - - - - - - - - - - - - -

- - 查看 王朝阳 发布的博文 - -

-
- - -
- - - - - - - diff --git "a/preview/pr-23/members/\347\224\260\347\202\234\347\250\213.html" "b/preview/pr-23/members/\347\224\260\347\202\234\347\250\213.html" deleted file mode 100644 index aef12e8b..00000000 --- "a/preview/pr-23/members/\347\224\260\347\202\234\347\250\213.html" +++ /dev/null @@ -1,605 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -田炜程 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- -
- - - - - -
- - - - - - - - - - - - - - - -

- - 查看 田炜程 发布的博文 - -

-
- - -
- - - - - - - diff --git "a/preview/pr-23/members/\347\256\200\344\277\212\346\235\260.html" "b/preview/pr-23/members/\347\256\200\344\277\212\346\235\260.html" deleted file mode 100644 index 1958f462..00000000 --- "a/preview/pr-23/members/\347\256\200\344\277\212\346\235\260.html" +++ /dev/null @@ -1,799 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -简俊杰 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- -
- - - - - -
- - - - - -

荣誉成就

- - - - - - - - - - - - - - - - - - - - - -
- -
- - - - - - - - - - -
- - - - - - - - -
- - 第五届全球校园人工智能算法精英大赛 - -
- -
- - 国家级 - - - 一等奖 - -
- -
- - - 2023年11月 - -
- -
- -
- -
- - 成员: - - - - 刘至忠 - - - , - - - - - 曾世鹏 - 曾世鹏 - - - , - - - - - 周晗 - 周晗 - - - , - - - - - 黄宇涵 - 黄宇涵 - - - , - - - - - 简俊杰 - 简俊杰 - - - , - - - - - 张昭骏 - 张昭骏 - - - - -
- -
- - -#f7c44d - - - - -
-
-
- - - - - -
- - - - - - - - - - - - - -

- - 查看 简俊杰 发布的博文 - -

-
- - -
- - - - - - - diff --git "a/preview/pr-23/members/\350\203\241\346\200\235\346\230\212.html" "b/preview/pr-23/members/\350\203\241\346\200\235\346\230\212.html" deleted file mode 100644 index 43d0801e..00000000 --- "a/preview/pr-23/members/\350\203\241\346\200\235\346\230\212.html" +++ /dev/null @@ -1,766 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -胡思昊 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- - - -

全狼牙最帅的人

-
- - - - - -
- - - - - -

荣誉成就

- - - - - - - - - - - - - - - - - - - - - -
- -
- - - - - - - - - - -
- - - - - - - - -
- - RoboMaster 开源奖 - -
- -
- - - 优秀奖 - -
- -
- - - 2024年10月 - -
- -
- - 在RoboMaster论坛及官网等渠道将核心技术或运营管理方法开源,推进RoboMaster大赛的发展及弘扬工程师文化与精神。 - -
- -
- - 成员: - - - - - 周晗 - 周晗 - - - , - - - - - 胡思昊 - 胡思昊 - - - - -
- -
- - - - - - - -
-
-
- - - - - -
- - - - - - - - - - - - - -

- - 查看 胡思昊 发布的博文 - -

-
- - -
- - - - - - - diff --git "a/preview/pr-23/members/\350\213\217\346\264\213.html" "b/preview/pr-23/members/\350\213\217\346\264\213.html" deleted file mode 100644 index e357201c..00000000 --- "a/preview/pr-23/members/\350\213\217\346\264\213.html" +++ /dev/null @@ -1,602 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -苏洋 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- -
- - - - - -
- - - - - - - - - - - - - - - -

- - 查看 苏洋 发布的博文 - -

-
- - -
- - - - - - - diff --git "a/preview/pr-23/members/\350\246\203\347\264\253\350\210\252.html" "b/preview/pr-23/members/\350\246\203\347\264\253\350\210\252.html" deleted file mode 100644 index 1a6d1bb8..00000000 --- "a/preview/pr-23/members/\350\246\203\347\264\253\350\210\252.html" +++ /dev/null @@ -1,593 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -覃紫航 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- -
- - - - - -
- - - - - - - - - - - - - - - -

- - 查看 覃紫航 发布的博文 - -

-
- - -
- - - - - - - diff --git "a/preview/pr-23/members/\350\260\210\351\224\246\344\271\224.html" "b/preview/pr-23/members/\350\260\210\351\224\246\344\271\224.html" deleted file mode 100644 index c3c227b1..00000000 --- "a/preview/pr-23/members/\350\260\210\351\224\246\344\271\224.html" +++ /dev/null @@ -1,602 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -谈锦乔 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- -
- - - - - -
- - - - - - - - - - - - - - - -

- - 查看 谈锦乔 发布的博文 - -

-
- - -
- - - - - - - diff --git "a/preview/pr-23/members/\350\265\265\345\256\266\350\211\272.html" "b/preview/pr-23/members/\350\265\265\345\256\266\350\211\272.html" deleted file mode 100644 index d08ffe93..00000000 --- "a/preview/pr-23/members/\350\265\265\345\256\266\350\211\272.html" +++ /dev/null @@ -1,617 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -赵家艺 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- -
- - - - - -
- - - - - -

荣誉成就

-
- - - - - -
- - - - - - - - - - - - - -

- - 查看 赵家艺 发布的博文 - -

-
- - -
- - - - - - - diff --git "a/preview/pr-23/members/\350\265\265\345\267\247\345\251\267.html" "b/preview/pr-23/members/\350\265\265\345\267\247\345\251\267.html" deleted file mode 100644 index 2c2eebe9..00000000 --- "a/preview/pr-23/members/\350\265\265\345\267\247\345\251\267.html" +++ /dev/null @@ -1,611 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -赵巧婷 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- -
- - - - - -
- - - - - -

荣誉成就

-
- - - - - -
- - - - - - - - - - - - - -

- - 查看 赵巧婷 发布的博文 - -

-
- - -
- - - - - - - diff --git "a/preview/pr-23/members/\351\202\265\345\230\211\351\200\270.html" "b/preview/pr-23/members/\351\202\265\345\230\211\351\200\270.html" deleted file mode 100644 index c4efdf03..00000000 --- "a/preview/pr-23/members/\351\202\265\345\230\211\351\200\270.html" +++ /dev/null @@ -1,605 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -邵嘉逸 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- -
- - - - - -
- - - - - - - - - - - - - - - -

- - 查看 邵嘉逸 发布的博文 - -

-
- - -
- - - - - - - diff --git "a/preview/pr-23/members/\351\202\265\347\235\277\345\210\235.html" "b/preview/pr-23/members/\351\202\265\347\235\277\345\210\235.html" deleted file mode 100644 index 4b931fd1..00000000 --- "a/preview/pr-23/members/\351\202\265\347\235\277\345\210\235.html" +++ /dev/null @@ -1,602 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -邵睿初 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- -
- - - - - -
- - - - - - - - - - - - - - - -

- - 查看 邵睿初 发布的博文 - -

-
- - -
- - - - - - - diff --git "a/preview/pr-23/members/\351\231\210\347\253\236\345\265\230.html" "b/preview/pr-23/members/\351\231\210\347\253\236\345\265\230.html" deleted file mode 100644 index 5a00a906..00000000 --- "a/preview/pr-23/members/\351\231\210\347\253\236\345\265\230.html" +++ /dev/null @@ -1,617 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -陈竞嵘 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- -
- - - - - -
- - - - - -

荣誉成就

-
- - - - - -
- - - - - - - - - - - - - -

- - 查看 陈竞嵘 发布的博文 - -

-
- - -
- - - - - - - diff --git "a/preview/pr-23/members/\351\251\254\351\200\270\351\243\236.html" "b/preview/pr-23/members/\351\251\254\351\200\270\351\243\236.html" deleted file mode 100644 index cc9c0f4d..00000000 --- "a/preview/pr-23/members/\351\251\254\351\200\270\351\243\236.html" +++ /dev/null @@ -1,602 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -马逸飞 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- -
- - - - - -
- - - - - - - - - - - - - - - -

- - 查看 马逸飞 发布的博文 - -

-
- - -
- - - - - - - diff --git "a/preview/pr-23/members/\351\253\230\345\244\251\350\241\241.html" "b/preview/pr-23/members/\351\253\230\345\244\251\350\241\241.html" deleted file mode 100644 index 12c620ba..00000000 --- "a/preview/pr-23/members/\351\253\230\345\244\251\350\241\241.html" +++ /dev/null @@ -1,617 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -高天衡 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- -
- - - - - -
- - - - - -

荣誉成就

-
- - - - - -
- - - - - - - - - - - - - -

- - 查看 高天衡 发布的博文 - -

-
- - -
- - - - - - - diff --git "a/preview/pr-23/members/\351\253\230\345\256\210\347\220\250.html" "b/preview/pr-23/members/\351\253\230\345\256\210\347\220\250.html" deleted file mode 100644 index 911156e9..00000000 --- "a/preview/pr-23/members/\351\253\230\345\256\210\347\220\250.html" +++ /dev/null @@ -1,602 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -高守琨 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- -
- - - - - -
- - - - - - - - - - - - - - - -

- - 查看 高守琨 发布的博文 - -

-
- - -
- - - - - - - diff --git "a/preview/pr-23/members/\351\253\230\346\242\223\345\262\251.html" "b/preview/pr-23/members/\351\253\230\346\242\223\345\262\251.html" deleted file mode 100644 index e61efbad..00000000 --- "a/preview/pr-23/members/\351\253\230\346\242\223\345\262\251.html" +++ /dev/null @@ -1,617 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -高梓岩 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- -
- - - - - -
- - - - - -

荣誉成就

-
- - - - - -
- - - - - - - - - - - - - -

- - 查看 高梓岩 发布的博文 - -

-
- - -
- - - - - - - diff --git "a/preview/pr-23/members/\351\262\215\344\271\220\346\263\211.html" "b/preview/pr-23/members/\351\262\215\344\271\220\346\263\211.html" deleted file mode 100644 index c5981ff4..00000000 --- "a/preview/pr-23/members/\351\262\215\344\271\220\346\263\211.html" +++ /dev/null @@ -1,780 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -鲍乐泉 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- - - -

继承田队意志,希望能够让狼牙变得更好。

-
- - - - - -
- - - - - -

荣誉成就

- - - - - - - - - - - - - - - - - - - - - -
- -
- - - - - - - - - - -
- - - - - - - - -
- - 第七届全国大学生嵌入式芯片与系统设计竞赛 - -
- -
- - 国家级 - - - 一等奖 - -
- -
- - - 2024年08月 - -
- -
- - 该项目提出了一种校车智能安全系统,系统使用NFC和人脸识别对乘客进行统计,避免无关人员上车的同时防止学生意外漏乘。同时,使用GPS对校车位置进行实时监测,以避免超速和不按路线行驶等违规行为的发生。此外,系统使用AI识别警告司机疲劳驾驶等危险驾驶行为。所有数据还可上传云端,供家长和监管部门监督。 - -
- -
- - 成员: - - - - - 刘敬勋 - 刘敬勋 - - - , - - - - 胡天齐 - - - , - - - - - 鲍乐泉 - 鲍乐泉 - - - - -
- -
- - -#f7c44d - - - - -
-
-
- - - - - -
- - - - - - - - - - - - - -

- - 查看 鲍乐泉 发布的博文 - -

-
- - -
- - - - - - - diff --git "a/preview/pr-23/members/\351\273\204\345\256\207\346\266\265.html" "b/preview/pr-23/members/\351\273\204\345\256\207\346\266\265.html" deleted file mode 100644 index e96c8260..00000000 --- "a/preview/pr-23/members/\351\273\204\345\256\207\346\266\265.html" +++ /dev/null @@ -1,961 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -黄宇涵 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- -
- - - - - -
- - - - - -

荣誉成就

- - - - - - - - - -

2024

- - - - - - - - - - - - - - -
- -
- - - - - - - - - - -
- - - - - - - - -
- - 第七届全国大学生嵌入式芯片与系统设计竞赛 - -
- -
- - 国家级 - - - 一等奖,广和通智联杯,广和通企业现金奖 - -
- -
- - - 2024年11月 - -
- -
- - “智巡者”边云协同道路损伤监控系统——边缘侧,检测模块利用AI视觉和陀螺仪传感,识别路面损害并采集道路状况;定位模块依靠GNSS匹配伤损区域位置信息;通信模块将检测信息通过5G网络实时上传至云服务器。云端上,以城市热力图等形式直观显示道路状况,同时计算行业标准PCI(路面损坏状况指数JTG 205210—2018),预估预算,并提供科学道路养护方案。 - -
- -
- - 成员: - - - - - 曾世鹏 - 曾世鹏 - - - , - - - - - 周晗 - 周晗 - - - , - - - - - 黄宇涵 - 黄宇涵 - - - - -
- -
- - -#f7c44d - - - - -
-
- - - - - - -

2023

- - - - - - - - - - - - - - -
- -
- - - - - - - - - - -
- - - - - - - - -
- - 第五届全球校园人工智能算法精英大赛 - -
- -
- - 国家级 - - - 一等奖 - -
- -
- - - 2023年11月 - -
- -
- -
- -
- - 成员: - - - - 刘至忠 - - - , - - - - - 曾世鹏 - 曾世鹏 - - - , - - - - - 周晗 - 周晗 - - - , - - - - - 黄宇涵 - 黄宇涵 - - - , - - - - - 简俊杰 - 简俊杰 - - - , - - - - - 张昭骏 - 张昭骏 - - - - -
- -
- - -#f7c44d - - - - -
-
-
- - - - - -
- - - - - - - - - - - - - -

- - 查看 黄宇涵 发布的博文 - -

-
- - -
- - - - - - - diff --git a/preview/pr-23/news/2024-10-22-xhorse.html b/preview/pr-23/news/2024-10-22-xhorse.html deleted file mode 100644 index cecf2d4e..00000000 --- a/preview/pr-23/news/2024-10-22-xhorse.html +++ /dev/null @@ -1,648 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -企业交流|数马电子公司参观狼牙实验室 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- - - -

企业交流|数马电子公司参观狼牙实验室

- - - - - - - - -
- - - - - -
- - - -

Xhorse是一家以智能制造为基础的高新技术企业,一直在探索智能制造与生活的新可能性,并致力于通过科技改变生活。

- -
- -
- - figure image - - -
- -
- - figure image - - -
- -
- - figure image - - -
- - -
- -

在AI机器人浪潮的涌动下,狼牙战队与数马电子之间的故事精彩纷呈且充满惊喜。其中最令人瞩目的莫过于数马电子奚总对AI机器人技术的痴迷与热爱。一走进实验室,团队的机器人就牢牢抓住了奚总的目光。他格外关注平衡步兵、哨兵和飞镖这几台机器人,并且和队长细致地交流了它们的情况。凭借企业家敏锐的洞察力,结合我们对规则的讲解,奚总很快意识到我们目前面临的问题和挑战,并且给出了具体的改进建议和未来的发展方向。

- -

随后,奚总一行人移步至103雕刻间,深入了解了先进的加工技术,对工艺的精湛与细致赞叹不已。参观结束后,他们继续前往训练棚,对训练设施与流程提出了富有建设性的意见与建议。

- -
- - figure image - - -
- -
- - figure image - - -
- -

狼牙战队与数马电子公司在多个技术领域不谋而合的追求,以及对未来蓝图的共同勾勒。狼牙战队满怀诚意与期待,渴望与数马电子搭建起一座更加坚固且恒久的合作之桥。让我们携手前行,在这条充满机遇与挑战的道路上,共同挖掘更多的合作潜力,探索未来的无限精彩!

-
- - - - - -
- - - -
- - - - - - -
-
- - -
- - - - - - - diff --git a/preview/pr-23/news/index.html b/preview/pr-23/news/index.html deleted file mode 100644 index c3f2de35..00000000 --- a/preview/pr-23/news/index.html +++ /dev/null @@ -1,642 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -新闻 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
-

-战队的最新动态

-
- - - - - -
- - - - -
- -
-
- - - - - - -
- 企业交流|数马电子公司参观狼牙实验室 - - - - - - - - - - - - - - - -

- Xhorse是一家以智能制造为基础的高新技术企业,一直在探索智能制造与生活的新可能性,并致力于通过科技改变生活。 - -

-
-
-
-
- - -
- - - - - - - diff --git a/preview/pr-23/projects/index.html b/preview/pr-23/projects/index.html deleted file mode 100644 index 498b45f2..00000000 --- a/preview/pr-23/projects/index.html +++ /dev/null @@ -1,699 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -项目 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
-

-我们的项目

- -

RoboMaster 机器人项目

- -
- - 英雄机器人 - -
- -

英雄机器人

- - -

自适应底盘设计:适应多种地形运动,避免轮子悬空空转导致功率浪费;

- -

三摩擦轮设计:能够实现20m吊射42mm大弹丸打击大装甲板大小模块,命中率60%;实现自动瞄准打击7-8m旋转装甲板;

- -

超级电容:四开关buck-boost 能实现300W稳定放电;

- -

软件控制已实现功率控制、PID+跟踪微分器+前馈、利用弹道方程结合打击目标标定发射机构参数;

- -

视觉部分实现YOLO v8关键点检测、PNP位姿解算。

- - -
-
- -
- - 步兵机器人 - -
- -

步兵机器人

- - -

多种底盘结构:全向轮、舵轮、轮腿;

- -

FreeRTOS操作系统实现单片机伪多线程处理;

- -

多轮组运动方程解算满足不同机器人底盘需求;

- -

PID&ADRC实现云台精准控制。

- -
-
- -
- - 哨兵机器人 - -
- -

哨兵机器人

- - -

全自动运行:卡尔曼运动融合多传感器数据,使机器人自我感知运动状态;

- -

全自动导航:全自由度舵轮赋能精准里程计,结合激光雷达DLIO定位与PCL点云处理,机内实现大量点云处理;PCL可视化地图深度融合A*路径规划。

- - -
-
- -
- - 工程机器人 - -
- -

工程机器人

- - -

六轴机械臂,仿生手臂设计方便复杂地形物体获取;

- -

电磁阀结合真空泵实现真空链路,实现物品轻易吸取;

- -

并联机械臂结构,方便多目标简单获取。

- -
-
- -
- - 空中机器人 - -
- -

空中机器人

- - -

自主研发48V高功率供电板;

- -

轻量化机身设计四轴多旋翼无人机;

- -

Gidance视觉定位稳定悬停,非线性预测,飞控通道映射,助力稳定悬停。

- - -
-
- -
- - 飞镖机器人 - -
- -

飞镖机器人

- - -

多种方案并行验证,采用双极摩擦轮方案,摩擦轮温控系统,精确控制摩擦轮发射时条件一致性;

- -

精确控制发射底座朝向,提升20m命中率。

- -
-
- -
- - 雷达机器人 - -
- -

雷达机器人

- - -

利用工业相机结合激光雷达实现多目标识别、定位和交互;

- -

软件上基于Ubuntu平台实现YoloV8目标检测、目标定位、决策通信,点云聚类极限达50FPS。

- -
-
-
- - -
- - - - - - - diff --git a/preview/pr-23/redirects.json b/preview/pr-23/redirects.json deleted file mode 100644 index 9e26dfee..00000000 --- a/preview/pr-23/redirects.json +++ /dev/null @@ -1 +0,0 @@ -{} \ No newline at end of file diff --git a/preview/pr-23/research/index.html b/preview/pr-23/research/index.html deleted file mode 100644 index 3a64eddf..00000000 --- a/preview/pr-23/research/index.html +++ /dev/null @@ -1,2853 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -成果 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
-

-我们的成果

- -

狼牙战队是一个以参加RoboMaster机器人比赛为主,其余竞赛为辅,以培养队员全面综合水平目标的综合型团队。

- - -
- - - - - -
- - -

高光时刻

-
-
-
RoboMaster 2024
- -小组生死赛,两发飞镖,大符加成,推爆基地。 -
-
- -
-
- -
-
-
RoboMaster 2024
- -十六进八,国赛名额关键争夺战,顽强拼搏,三分钟推爆基地。 -
-
- -
-
-
- - - - - -
- - -

荣誉奖项

- - -
- -

国家级

- -

2024

- -
- -
- - - - - - - - - - -
- - - - - - - - -
- - 第七届全国大学生嵌入式芯片与系统设计竞赛 - -
- -
- - 国家级 - - - 一等奖,广和通智联杯,广和通企业现金奖 - -
- -
- - - 2024年11月 - -
- -
- - “智巡者”边云协同道路损伤监控系统——边缘侧,检测模块利用AI视觉和陀螺仪传感,识别路面损害并采集道路状况;定位模块依靠GNSS匹配伤损区域位置信息;通信模块将检测信息通过5G网络实时上传至云服务器。云端上,以城市热力图等形式直观显示道路状况,同时计算行业标准PCI(路面损坏状况指数JTG 205210—2018),预估预算,并提供科学道路养护方案。 - -
- -
- - 成员: - - - - - 曾世鹏 - 曾世鹏 - - - , - - - - - 周晗 - 周晗 - - - , - - - - - 黄宇涵 - 黄宇涵 - - - - -
- -
- - -#f7c44d - - - - -
-
- -
- -
- - - - - - - - - - -
- - - - - - - - -
- - 美国数学建模大赛 - -
- -
- - 国家级 - - - Meritorious winner - -
- -
- - - 2024年10月 - -
- -
- -
- -
- - 成员: - - - - - - - - -
- -
- - -#f7c44d - - - - -
-
- -
- -
- - - - - - - - - - -
- - - - - - - - -
- - 第七届全国大学生嵌入式芯片与系统设计竞赛 - -
- -
- - 国家级 - - - 一等奖 - -
- -
- - - 2024年08月 - -
- -
- - 该项目提出了一种校车智能安全系统,系统使用NFC和人脸识别对乘客进行统计,避免无关人员上车的同时防止学生意外漏乘。同时,使用GPS对校车位置进行实时监测,以避免超速和不按路线行驶等违规行为的发生。此外,系统使用AI识别警告司机疲劳驾驶等危险驾驶行为。所有数据还可上传云端,供家长和监管部门监督。 - -
- -
- - 成员: - - - - - 刘敬勋 - 刘敬勋 - - - , - - - - 胡天齐 - - - , - - - - - 鲍乐泉 - 鲍乐泉 - - - - -
- -
- - -#f7c44d - - - - -
-
- -
- -
- - - - - - - - - - -
- - - - - - - - -
- - 第七届全国大学生嵌入式芯片与系统设计竞赛 - -
- -
- - 国家级 - - - 三等奖 - -
- -
- - - 2024年08月 - -
- -
- - “火眼金睛”智慧医疗守护精灵 - -
- -
- - 成员: - - - - - 朱云福 - 朱云福 - - - , - - - - 敬双 - - - , - - - - 贾茹婷 - - - - -
- -
- - -#7a4c10 - - - - -
-
- -
- -
- - - - - - - - - - -
- - - - - - - - -
- - 2024睿抗机器人开发者大赛(RAICOM) - -
- -
- - 国家级 - - - 二等奖 - -
- -
- - - 2024年08月 - -
- -
- -
- -
- - 成员: - - - - - 曾世鹏 - 曾世鹏 - - - , - - - - 刘至忠 - - - , - - - - - 周晗 - 周晗 - - - - -
- -
- - -#e0e0e0 - - - - -
-
- -
- -
- - - - - - - - - - -
- - - - - - - - -
- - 第七届全国高校智能机器人创意大赛 - -
- -
- - 国家级 - - - 三等奖 - -
- -
- - - 2024年08月 - -
- -
- -
- -
- - 成员: - - - - 张哲震 - - - , - - - - - 柯一康 - 柯一康 - - - , - - - - 王欢 - - - - -
- -
- - -#7a4c10 - - - - -
-
- -
- -
- - - - - - - - - - -
- - - - - - - - -
- - 第十一届“大唐杯”全国大学生新一代信息通信技术大赛信息通信工程实践赛道 - -
- -
- - 国家级 - - - 国家三等奖,省级二等奖 - -
- -
- - - 2024年08月 - -
- -
- -
- -
- - 成员: - - - - - 曾世鹏 - 曾世鹏 - - - , - - - - 金钊 - - - - -
- -
- - -#e0e0e0 - - - - -
-
- -
- -
- - - - - - - - - - -
- - - - - - - - -
- - 第二十三届全国大学生机器人大赛robomaster2024机甲大师超级对抗赛机器人竞技奖 - -
- -
- - 国家级 - - - 一等奖 - -
- -
- - - 2024年08月 - -
- -
- -
- -
- - 成员: - - - - - 曾世鹏 - 曾世鹏 - - - , - - - - 刘至忠 - - - - -
- -
- - -#f7c44d - - - - -
-
- -
- -
- - - - - - - - - - -
- - - - - - - - -
- - 第十一届全国大学生机械创新设计大赛 - -
- -
- - 国家级 - - - 一等奖 - -
- -
- - - 2024年07月 - -
- -
- - 设计了用于大棚内小青菜收割的小型农业机械设备。利用偏置的曲柄摇杆机构设计切割装置,实现双刀错动,切割小青菜根部。通过链传动及齿轮传动实现车轮与传送带的反向转动来移动,调节各级减速比实现车体前进线速度等于传送带转动线速度,并且采用锯齿状车轮以及基于同步带和锥齿轮传动的差速器机构防止打滑。 - -
- -
- - 成员: - - - - - 柯一康 - 柯一康 - - - - -
- -
- - -#f7c44d - - - - -
-
- -

2023

- -
- -
- - - - - - - - - - -
- - - - - - - - -
- - 第十六届全国三维数字化创新设计大赛 - -
- -
- - 国家级 - - - 一等奖,“龙鼎大奖” - -
- -
- - - 2023年11月 - -
- -
- - 机械臂夹具设计与数控机床操作 - -
- -
- - 成员: - - - - - 柯一康 - 柯一康 - - - - -
- -
- - -#f7c44d - - - - -
-
- -
- -
- - - - - - - - - - -
- - - - - - - - -
- - 第五届全球校园人工智能算法精英大赛 - -
- -
- - 国家级 - - - 一等奖 - -
- -
- - - 2023年11月 - -
- -
- -
- -
- - 成员: - - - - 刘至忠 - - - , - - - - - 曾世鹏 - 曾世鹏 - - - , - - - - - 周晗 - 周晗 - - - , - - - - - 黄宇涵 - 黄宇涵 - - - , - - - - - 简俊杰 - 简俊杰 - - - , - - - - - 张昭骏 - 张昭骏 - - - - -
- -
- - -#f7c44d - - - - -
-
- -
- -
- - - - - - - - - - -
- - - - - - - - -
- - 智能机器人创意大赛 - -
- -
- - 国家级 - - - 二等奖 - -
- -
- - - 2023年08月 - -
- -
- - 智能晾衣架:使用国产平台沁恒作为主控平台、包含温湿度、风速等传感器、包含语音交互功能,可以自主完成衣物的晾晒功能。 - -
- -
- - 成员: - - - - 祝科伟 - - - , - - - - 牛天泽 - - - , - - - - 王越瑶 - - - - -
- -
- - -#e0e0e0 - - - - -
-
- -
- -
- - - - - - - - - - -
- - - - - - - - -
- - 第六届全国大学生嵌入式芯片与系统设计竞赛 - -
- -
- - 国家级 - - - 一等奖,最佳工程奖 - -
- -
- - - 2023年08月 - -
- -
- - 智能晾衣架:使用国产平台沁恒作为主控平台、包含温湿度、风速等传感器、包含语音交互功能,可以自主完成衣物的晾晒功能。 - -
- -
- - 成员: - - - - 祝科伟 - - - , - - - - 牛天泽 - - - , - - - - 王越瑶 - - - - -
- -
- - -#f7c44d - - - - -
-
- -
- -
- - - - - - - - - - -
- - - - - - - - -
- - 第六届全国大学生嵌入式芯片与系统设计竞赛 - -
- -
- - 国家级 - - - 一等奖 - -
- -
- - - 2023年08月 - -
- -
- - 有氧吧 - 让每个人都能享受到专业的有氧运动指导 - -
- -
- - 成员: - - - - 刘景宇 - - - , - - - - - 周倍进 - 周倍进 - - - , - - - - 张嘉航 - - - - -
- -
- - -#f7c44d - - - - -
-
- -

2022

- -
- -
- - - - - - - - - - -
- - - - - - - - -
- - 2022年全国大学生先进成图技术与产品信息建模创新大赛 - -
- -
- - 国家级 - - - 二等奖 - -
- -
- - - 2022年01月 - -
- -
- -
- -
- - 成员: - - - - - 李传沛 - 李传沛 - - - - -
- -
- - -#e0e0e0 - - - - -
-
- -

省级

- -

2024

- - -
- -
-
- - 全国大学生电子设计竞赛 - -
- -
- - 省级 - - - 三等奖 - -
- -
- -
- -
- 成员: - - - - 谢新宇 - - - -
- -
-
- - -
- -
-
- - 第七届全国大学生嵌入式芯片与系统设计竞赛 - -
- -
- - 省级 - - - 二等奖 - -
- -
- -
- -
- 成员: - - - - 马培桢 - - , - - - - 刘诺 - - , - - - - 陈晨 - - - -
- -
-
- -

2023

- - -
- -
-
- - 中国大学生数学竞赛 - -
- -
- - 省级 - - - 一等奖 - -
- -
- -
- -
- 成员: - - - - - 丁硕 - 丁硕 - - - - -
- -
-
- -

其他类型

- - -
- -
-
- - RoboMaster AWARD 2024 - -
- -
- - - 提名 - -
- -
- - RoboMaster AWARD是2024赛季起设立的个人荣誉奖项,每赛季评选、表彰一次。为宣扬卓越青年工程师文化精神,发挥榜样力量,倡导RoboMaster 机甲大师超级对抗赛参赛队员践行赛事文化价值观、积极发挥个人影响力,因此对所在队伍参赛有显著贡献的优秀个人予以鼓励。 - -
- -
- 成员: - - - - - 田炜程 - 田炜程 - - - - -
- -
-
- - -
- -
-
- - RoboMaster 开源奖 - -
- -
- - - 优秀奖 - -
- -
- - 在RoboMaster论坛及官网等渠道将核心技术或运营管理方法开源,推进RoboMaster大赛的发展及弘扬工程师文化与精神。 - -
- -
- 成员: - - - - - 周晗 - 周晗 - - - , - - - - - 胡思昊 - 胡思昊 - - - - -
- -
-
-
- - - - - -
- -
- - -
- - - - - - - diff --git a/preview/pr-23/robots.txt b/preview/pr-23/robots.txt deleted file mode 100644 index 7c8ab7a8..00000000 --- a/preview/pr-23/robots.txt +++ /dev/null @@ -1 +0,0 @@ -Sitemap: /preview/pr-23/sitemap.xml diff --git a/preview/pr-23/sitemap.xml b/preview/pr-23/sitemap.xml deleted file mode 100644 index 3317552b..00000000 --- a/preview/pr-23/sitemap.xml +++ /dev/null @@ -1,319 +0,0 @@ - - - -/preview/pr-23/awards/%E5%85%88%E8%BF%9B%E6%88%90%E5%9B%BE%E6%8A%80%E6%9C%AF%E4%B8%8E%E4%BA%A7%E5%93%81%E4%BF%A1%E6%81%AF%E5%BB%BA%E6%A8%A1%E5%88%9B%E6%96%B0%E5%A4%A7%E8%B5%9B1.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/awards/23%E5%B5%8C%E8%B5%9B1.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/awards/23%E5%B5%8C%E8%B5%9B2.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/awards/%E6%99%BA%E8%83%BD%E6%9C%BA%E5%99%A8%E4%BA%BA%E5%88%9B%E6%84%8F%E5%A4%A7%E8%B5%9B1.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/awards/23%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD%E6%8C%91%E6%88%98%E8%B5%9B.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/awards/23%E5%85%A8%E5%9B%BD%E4%B8%89%E7%BB%B4%E6%95%B0%E5%AD%97%E5%BB%BA%E9%80%A0%E5%A4%A7%E8%B5%9B%E2%80%9C%E5%8D%8E%E4%B8%AD%E6%95%B0%E6%8E%A7%E6%9D%AF%E2%80%9D%E5%B7%A5%E4%B8%9A%E5%8D%8F%E4%BD%9C%E6%9C%BA%E5%99%A8%E4%BA%BA%E5%8F%8A%E6%95%B0%E5%AD%97%E5%AD%AA%E7%94%9F%E6%8A%80%E6%9C%AF%E5%88%9B%E6%96%B0%E5%BA%94%E7%94%A8%E4%B8%93%E9%A1%B9%E8%B5%9B.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/awards/24%E5%B5%8C%E8%B5%9B1.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/awards/%E4%B8%AD%E5%9B%BD%E5%A4%A7%E5%AD%A6%E7%94%9F%E6%95%B0%E5%AD%A6%E7%AB%9E%E8%B5%9B.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/awards/%E7%AC%AC%E5%8D%81%E4%B8%80%E5%B1%8A%E5%85%A8%E5%9B%BD%E5%A4%A7%E5%AD%A6%E7%94%9F%E6%9C%BA%E6%A2%B0%E5%88%9B%E6%96%B0%E8%AE%BE%E8%AE%A1%E5%A4%A7%E8%B5%9B.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/awards/24%E5%B5%8C%E8%B5%9B3.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/awards/24%E7%94%B5%E8%B5%9B1.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/awards/RM24%E7%AB%9E%E6%8A%80%E5%A5%96.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/awards/RMAward.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/awards/%E5%A4%A7%E5%94%90%E6%9D%AF1.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/awards/%E6%99%BA%E8%83%BD%E6%9C%BA%E5%99%A8%E4%BA%BA%E5%88%9B%E6%84%8F%E5%A4%A7%E8%B5%9B2.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/awards/%E7%9D%BF%E6%8A%97%E6%9C%BA%E5%99%A8%E4%BA%BA%E5%BC%80%E5%8F%91%E8%80%85%E5%A4%A7%E8%B5%9B.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/awards/24%E5%B5%8C%E8%B5%9B2.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/awards/24%E5%B5%8C%E8%B5%9B4.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/awards/hero_opensource.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/awards/%E7%BE%8E%E5%9B%BD%E6%95%B0%E5%AD%A6%E5%BB%BA%E6%A8%A1%E5%A4%A7%E8%B5%9B.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/members/%E4%B8%81%E7%A1%95.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/members/%E5%88%98%E6%95%AC%E5%8B%8B.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/members/%E5%88%98%E6%98%8E%E7%BD%A1.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/members/%E5%88%98%E6%98%B1%E8%BE%B0.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/members/%E5%88%98%E6%B3%BD%E6%97%AD.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/members/%E5%88%98%E7%9A%93%E5%AE%87.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/members/%E5%90%B4%E7%A3%8A.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/members/%E5%91%A8%E5%80%8D%E8%BF%9B.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/members/%E5%91%A8%E6%99%97.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/members/%E5%94%90%E5%AD%90%E8%88%AA.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/members/%E5%B2%B3%E4%BD%B3%E7%92%87.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/members/%E5%BC%A0%E6%98%AD%E9%AA%8F.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/members/%E5%BE%90%E6%99%B6.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/members/%E6%88%B4%E8%85%BE%E8%B6%8A.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/members/%E6%96%87%E5%8D%9A%E9%80%9A.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/members/%E6%96%B9%E6%9D%B0%E6%98%8E.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/members/%E6%96%BD%E6%89%BF%E7%86%99.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/members/%E6%9B%BE%E4%B8%96%E9%B9%8F.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/members/%E6%9B%BE%E5%96%BB%E6%B1%9F.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/members/%E6%9C%B1%E4%BA%91%E7%A6%8F.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/members/%E6%9D%8E%E4%BC%A0%E6%B2%9B.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/members/%E6%9D%8E%E6%A3%AE%E9%98%B3.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/members/%E6%9D%8E%E7%A3%8A.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/members/%E6%9D%8E%E8%94%9A%E6%98%8E.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/members/%E6%9F%AF%E4%B8%80%E5%BA%B7.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/members/%E6%A2%81%E7%85%9C%E7%90%9B.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/members/%E7%8E%8B%E5%85%B4%E5%88%9A.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/members/%E7%8E%8B%E5%AE%81.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/members/%E7%8E%8B%E6%9C%9D%E9%98%B3.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/members/%E7%94%B0%E7%82%9C%E7%A8%8B.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/members/%E7%AE%80%E4%BF%8A%E6%9D%B0.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/members/%E8%83%A1%E6%80%9D%E6%98%8A.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/members/%E8%8B%8F%E6%B4%8B.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/members/%E8%A6%83%E7%B4%AB%E8%88%AA.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/members/%E8%B0%88%E9%94%A6%E4%B9%94.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/members/%E8%B5%B5%E5%AE%B6%E8%89%BA.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/members/%E8%B5%B5%E5%B7%A7%E5%A9%B7.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/members/%E9%82%B5%E5%98%89%E9%80%B8.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/members/%E9%82%B5%E7%9D%BF%E5%88%9D.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/members/%E9%99%88%E7%AB%9E%E5%B5%98.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/members/%E9%A9%AC%E9%80%B8%E9%A3%9E.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/members/%E9%AB%98%E5%A4%A9%E8%A1%A1.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/members/%E9%AB%98%E5%AE%88%E7%90%A8.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/members/%E9%AB%98%E6%A2%93%E5%B2%A9.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/members/%E9%B2%8D%E4%B9%90%E6%B3%89.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/members/%E9%BB%84%E5%AE%87%E6%B6%B5.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/news/2024-10-22-xhorse.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/2024/09/27/rm24hero.html -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/contact/ -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/team/history/ -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/team/23-season/ -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/team/all/ -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/team/ -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/blog/ -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/projects/ -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/research/ -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/sponsor/ -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/news/ -2024-11-16T01:34:33+00:00 - - -/preview/pr-23/ -2024-11-16T01:34:33+00:00 - - diff --git a/preview/pr-23/sponsor/index.html b/preview/pr-23/sponsor/index.html deleted file mode 100644 index cee2f48c..00000000 --- a/preview/pr-23/sponsor/index.html +++ /dev/null @@ -1,568 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -赞助 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
-

- 赞助我们

-
- - -
- - - - - - - diff --git a/preview/pr-23/team/23-season/index.html b/preview/pr-23/team/23-season/index.html deleted file mode 100644 index b2eff939..00000000 --- a/preview/pr-23/team/23-season/index.html +++ /dev/null @@ -1,2531 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -成员 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
-

-23 赛季团队成员

- - -
- -

历史成员请参考历届成员

-
- - - - - -
- - -

-指导老师

- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -

-团队负责人

- -

-机械组

- -
- - - - - - - - - - - - - - - - - - -
- -

-电路组

- -
- - - - - - - - - - -
- -

-嵌软组

- -
- - - - - - - - - - -
- -

-算法组

- -
- - - - - - - - - - -
- -

-运营组

- -

-梯队

- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-
- - - - - -
- - -

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor -incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis -nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.

-
- - - - - -
- - -
- -
- - figure image - - -
- -
- - figure image - - -
- -
- - figure image - - -
- - -
-
- - -
- - - - - - - diff --git a/preview/pr-23/team/all/index.html b/preview/pr-23/team/all/index.html deleted file mode 100644 index 533d848f..00000000 --- a/preview/pr-23/team/all/index.html +++ /dev/null @@ -1,2584 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -所有成员 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
-

-所有团队成员

- - - -
- -

按年检索历史成员请参考历届成员

-
- - - - - -
- - -

-指导老师

- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -

-团队负责人

- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -

-队员

- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-
- - -
- - - - - - - diff --git a/preview/pr-23/team/history/index.html b/preview/pr-23/team/history/index.html deleted file mode 100644 index f0e28805..00000000 --- a/preview/pr-23/team/history/index.html +++ /dev/null @@ -1,571 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -历史团队成员 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
- -
- - -
- - - - - - - diff --git a/preview/pr-23/team/index.html b/preview/pr-23/team/index.html deleted file mode 100644 index c159e05e..00000000 --- a/preview/pr-23/team/index.html +++ /dev/null @@ -1,2841 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -成员 | HUSTLYRM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - HUSTLYRM - - - - 一往无前华科行,气壮山河狼牙名 - - - - - - - - -
- -
- - - - - - - - - - - -
-

-24 赛季团队成员

- - -
- -

历史成员请参考历届成员

-
- - - - - -
- - -

-指导老师

- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -

-团队负责人

- -
- - - - - - - - - - - - - - - - - - -
- -

-机械组

- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -

-电路组

- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -

-嵌软组

- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -

-算法组

- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -

-运营组

- -
- - - - - - - - - - - - - - - - - - - - - - - - - - -
- -

-梯队

- -
- - - - - - - - - - -
-
- - - - - -
- - -

从狼牙走出的优秀人才,他们在各自领域取得了优异的成绩,是狼牙战队的骄傲和榜样。

-
- - - - - -
- - -
- - -
- -

杰出人物

- -
- - - - - - - - - - -
-
- - -
- - - - - - -