0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

玩嗨OpenHarmony:基于OpenHarmony的丢失儿童寻找系统

共熵服务中心 来源:未知 2022-11-30 19:45 次阅读
51CTO 开源基础软件社区 #DAYU200体验官#丢失儿童寻找系统

1. 项目背景

根据《中国走失人口白皮书(2020)》,在整个2020年期间,我国走失人次达到了100万。其中未成年人占7.4%,也就是说,儿童走失人口近74000人,而失踪后找回来的大概只占到0.1%。一名走丢孩子的背后,都有一个破碎的家庭。

根据公安部儿童失踪信息紧急发布平台(“团圆”系统)数据显示,儿童失踪原因主要有被拐卖、离家出走、迷路走失、意外身亡等原因。走失事件往往容易转变为拐卖等恶劣的刑事案件,有很多孩子,或者遇到了拐卖儿童的人贩子,或者受到了意外伤害,最终给家庭带来毁灭性灾难。

援救一个孩子,圆满一个家。

2. 我们是谁?追寻者团队于2021年6月在郑州轻工业大学梅科尔工作室成立,致力于寻找丢失儿童,使其阖家团圆。团队成员之间优势互补、配合默契,分别负责算法设计、前后端开发、App开发、硬件开发,在各自负责的领域发光发热。在深度学习机器视觉方面,本团队成员具有浓厚的兴趣和较为丰富的学习经验,致力于跨年龄人脸识别技术的学习和探索,将丢失儿童的识别和身份确认作为项目发展方向。身为大学生的我们将社会责任牢记心中,在努力提升自身知识储备和能力的同时,为寻找丢失儿童事业竭尽心力。梅科尔工作室的老师和同学们在极为有限的条件下让价值最大化,工作室在老龄化、老年人康复、特殊人群关爱等方向发展良好,总计参与到60余个医疗项目的联合创新开发中。

698fff68-70a3-11ed-8abf-dac502259ad0.png

3. 项目简介

项目采用PyTorch和华为开源自研AI框架MindSpore,可以根据警方或他人提供的图片判断其是否为丢失儿童。同时还可以根据丢失儿童的时间长短,通过用户上传儿童的照片进行预估并生成当下的照片,更加便于家庭和警方寻找丢失儿童,帮助丢失儿童早日回归家庭。

69e5baca-70a3-11ed-8abf-dac502259ad0.png

PyTorch是一套开源的利用深度学习进行数据科学研究的重要框架。在灵活性、可读性和性能上都具备相当的优势,近年来已成为学术界实现深度学习算法最常用的框架。

6a066590-70a3-11ed-8abf-dac502259ad0.png

MindSpore(昇腾)是华为开源的一款全场景深度学习框架,旨在实现易开发、高效执行、全场景覆盖三大目标。其中,易开发表现为API友好、调试难度低;高效执行包括计算效率、数据预处理效率和分布式训练效率;全场景则指框架同时支持云、边缘以及端侧场景。

项目主要分为算法端、硬件端、基于OpenHarmony的App以及Vue前端,主要用到的软件有pycharm、idea、anaconda等。

算法端分为跨年龄人脸识别算法和人脸变老预测算法。跨年龄人脸识别算法通过使用MTCNN(多任务卷积神经网络)设计三层级联架构的 CNN 算法进行检测,提取出不受年龄干扰的身份特征,以此达到跨年龄人脸识别。人脸变老预测算法以GAN 为基础,并按照年龄、性别和语义分割对其进行标记,预测一个人在未来的样貌,或者他在过去的样貌。

网页端是Vue前端,源代码在Gitee上开源,用户可通过网站查看上传、搜寻以及查看丢失儿童信息,并且可以与我们进行联系和反馈。网页端偏向信息查看等功能,更多的操作需要进一步在App进行使用。

移动端目前为App。相对于微信小程序来说,App可以离线进行部分功能操作,提高了产品的适应面。通过网络连接将信息存储到服务器中,以达到多端信息互通。

4. 技术架构

6a280100-70a3-11ed-8abf-dac502259ad0.png

5. 开发环境
  • DevEco Studio for OpenHarmony3.0.0.900

  • OpenHarmony版本:3.1_Release

  • 开发板:DAYU200

6a4c292c-70a3-11ed-8abf-dac502259ad0.png6. 部分源码介绍6.1 首页

6.1.1HTML

<element name='comp' src='../../components/tabbar/tabbar.hml'>element>
<div class="container">
    <div class="text">
        <text>丢失儿童寻找text>
    div>
    <div class="container1">
        <swiper autoplay="true" class="swiper">
            <image src="{{$item}}" for="{{imageList}}" class="img">image>
        swiper>
    div>
    <div class="text1">
        <div class="line_y">div>
        <text>今日推荐text>
    div>
    <image class="img1" src="../../common/images/a1.jpg">image>
    <image class="img1" src="../../common/images/a3.jpg">image>
    <comp index="0">comp>
div>

6.1.2JS源码

export default {
    data: {
        title: "",
        imageList:['/common/images/2.jpg','/common/images/1.jpg','/common/images/3.jpg']
    },
    onInit() {
        this.title = this.$t('strings.world');
    },
    swipeToIndex(index) {
        this.$element('swiperImage').swipeTo({index: index});
    }
}
6.2 信息上传6.2.1HTML源码
<element name='comp' src='../../components/tabbar/tabbar.hml'>element>
<div class="container">
    <div class="text">
        <text>丢失儿童寻找text>
    div>
    <text class="title">走失人员信息text>
    <div class="input-item">
        <div class="color">
            <text class="input-title">姓名text>
            <input class="input" type="text" placeholder="请输入文本">input>
        div>
    div>
    <div class="input-item">
        <div class="color">
            <text class="length-title input-title">年龄text>
            <input class="input" type="text" placeholder="请输入走失时的年龄" maxlength="20" showcounter="false">input>
        div>
    div>
    <div class="input-item">
        <div class="color">
            <text class="input-title">性别text>
            <div class="radio-div">
                <select @change="changeFruit">
                    <option value="bananaValue">

                    option>
                    <option value="appleValue" selected="true">

                    option>
                select>
            div>
        div>
    div>
    <div class="input-item">
        <div class="color">
            <text class="input-title">走失日期text>
            <input class="input" type="date" placeholder="如:2021-11-27">input>
        div>
    div>
    <div class="container2">
        <text class="title2">您的详细信息text>
        <div class="input-item">
            <div class="color">
                <text class="input-title">姓名text>
                <input class="input" type="text" placeholder="请输入文本">input>
            div>
        div>


        <div class="input-item">
            <div class="color">
                <text class="input-title">性别text>
                <div class="radio-div2">
                    <select @change="changeFruit">
                        <option value="bananaValue">

                        option>
                        <option value="appleValue" selected="true">

                        option>
                    select>
                div>
            div>
        div>
        <div class="input-item">
            <div class="color">
                <text class="input-title">走失人员与您的关系text>
                <div class="checkbox-div">
                    <select @change="changeFruit">
                        <option value="bananaValue">
                            父子
                        option>
                        <option value="appleValue" selected="true">
                            母子
                        option>
                        <option value="pearValue">
                            父女
                        option>
                        <option value="pearValue2">
                            母女
                        option>
                    select>
                div>
            div>
        div>


        <div class="input-item">
            <div class="color">
                <text class="input-title">是否报警text>
                <switch showtext="true" texton="是" textoff="否" checked="true" @change="switchChange">
                switch>
            div>
        div>


        <div class="input-item">
            <div class="color">
                <text class="input-title">您的邮箱text>
                <input class="input" type="email" placeholder="方便我们联系您">input>
            div>
        div>


        <div class="input-item">
            <div class="color">
                <text class="message-title input-title">请输入手机text>
                <input class="message-input" type="number" placeholder="请输入手机号码">input>
            div>
        div>




        <div class="color">
            <input class="message-input" type="number" placeholder="请输入验证码">input>
            <input class="message-button" type="button" value="获取验证码">input>
        div>




    div>


    <div class="input-item">
        <div class="color">
            <image class="img" src="../../common/images/camera.png">image>
            <button class="message-button" type="capsule" value="上传图片" @click="jump">button>


        div>
    div>
    <div class="input-item">
        <input class="confirm-button" type="button" value="确认">input>
        <div class="text2">致力于帮助丢失儿童家庭寻找丢失儿童,让宝贝早日回家div>
        <button class="message-button" type="capsule" value="提交" @click="jump2">button>
    div>


    <comp index="1">comp>


div>

6.2.2JS源码

  import router from '@system.router';
export default {
    data: {
        title: ""
    },
    onInit() {
        this.title = this.$t('strings.world');
    },
    jump(){
        router.push({
            uri: 'pages/takePhoto/index',
        });


    },
    jump2(){
        router.push({
            uri: 'pages/submit/index',
        });


    }
}

6.3信息上传

6.3.1HTML源码

<element name='comp' src='../../components/tabbar/tabbar.hml'>element>
<div class="container">
    <div class="text">
        <text>丢失儿童寻找text>
    div>
    <text class="title">功能text>
    <text class="title1">服务电话:4000000000text>
    <image class="img" src="../../common/images/000.png">image>
    <comp index="2">comp>
div>

6.3.2JS源码

export default {
    data: {
        title: ""
    },
    onInit() {
        this.title = this.$t('strings.world');
    }


}
6adb179a-70a3-11ed-8abf-dac502259ad0.gif 本文完写在最后我们最近正带着大家玩嗨OpenHarmony。如果你有好玩的东东,欢迎投稿,让我们一起嗨起来!有点子,有想法,有Demo,立刻联系我们:合作邮箱:zzliang@atomsource.org
6ae81d00-70a3-11ed-8abf-dac502259ad0.gif

6af5a8c6-70a3-11ed-8abf-dac502259ad0.png

6b188e22-70a3-11ed-8abf-dac502259ad0.png6b2bfffc-70a3-11ed-8abf-dac502259ad0.png6b60d8b2-70a3-11ed-8abf-dac502259ad0.png

6b7498f2-70a3-11ed-8abf-dac502259ad0.png

6c4ad5ca-70a3-11ed-8abf-dac502259ad0.png

6c6033fc-70a3-11ed-8abf-dac502259ad0.png

6c71d79c-70a3-11ed-8abf-dac502259ad0.png

6c9c2dda-70a3-11ed-8abf-dac502259ad0.png

6cca5124-70a3-11ed-8abf-dac502259ad0.png

6cdf5fd8-70a3-11ed-8abf-dac502259ad0.png

6cfaa2e8-70a3-11ed-8abf-dac502259ad0.png

6d16af4c-70a3-11ed-8abf-dac502259ad0.png

6d3a0b2c-70a3-11ed-8abf-dac502259ad0.png

6d4f232c-70a3-11ed-8abf-dac502259ad0.png

6d6a949a-70a3-11ed-8abf-dac502259ad0.png

6d7a340e-70a3-11ed-8abf-dac502259ad0.png

6dab6718-70a3-11ed-8abf-dac502259ad0.png

6dbfe8f0-70a3-11ed-8abf-dac502259ad0.png

6ddef4ca-70a3-11ed-8abf-dac502259ad0.png


原文标题:玩嗨OpenHarmony:基于OpenHarmony的丢失儿童寻找系统

文章出处:【微信公众号:开源技术服务中心】欢迎添加关注!文章转载请注明出处。


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 开源技术
    +关注

    关注

    0

    文章

    389

    浏览量

    7914
  • OpenHarmony
    +关注

    关注

    25

    文章

    3660

    浏览量

    16156

原文标题:玩嗨OpenHarmony:基于OpenHarmony的丢失儿童寻找系统

文章出处:【微信号:开源技术服务中心,微信公众号:共熵服务中心】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    第三届OpenHarmony技术大会星光璀璨、致谢OpenHarmony社区贡献者

    操作系统,OpenAtom OpenHarmony(以下简称“OpenHarmony”)的进步与发展离不开产业界、学术界及生态伙伴们的协力共建。OpenHarmony项目群技术指导委员
    的头像 发表于 10-21 14:10 187次阅读

    基于ArkTS语言的OpenHarmony APP应用开发:HelloOpenharmony

    1、程序简介该程序是基于OpenHarmony标准系统编写的UI应用类:HelloOpenHarmony。本案例是基于API9接口开发。本案例已在OpenHarmony凌蒙派-RK35
    的头像 发表于 09-15 08:09 308次阅读
    基于ArkTS语言的<b class='flag-5'>OpenHarmony</b> APP应用开发:Hello<b class='flag-5'>Openharmony</b>

    【开源鸿蒙】使用QEMU运行OpenHarmony轻量系统

    本文将会介绍如何从源码安装QEMU 6.2.0,以及如何使用QEMU运行OpenHarmony轻量系统。通过本文,你将会对QEMU和OpenHarmony轻量系统又一个初步的认知,并对
    的头像 发表于 09-14 08:51 435次阅读
    【开源鸿蒙】使用QEMU运行<b class='flag-5'>OpenHarmony</b>轻量<b class='flag-5'>系统</b>

    [2K300适配OpenharmonyV4.1]根文件系统制作请教

    的文件系统rootfs.img烧录到2k300上,烧录失败。对比2k300开源资料中的Openharmony 文件系统,该文件系统为ext4格式,但是2k500编译出来的为Ubifs
    发表于 09-11 11:18

    OpenHarmony之开机优化

    OpenHarmony已经支持了Bootchart工具,我们可以直接使用Bootchart工具,Bootchart工具介绍如下: 概述 Bootchart是一个用于系统启动过程性能分析的开源软件工具
    发表于 07-01 16:39

    OpenHarmony 成功亮相国际学术会议 ASPLOS 2024

    举行的ASPLOS 2024上成功举办。本次学术教程会以“OpenHarmony操作系统的关键特性与能力”为主题,聚焦“基于OpenHarmony的前沿学术探索机遇与挑战“,详细介绍了
    的头像 发表于 05-16 09:28 395次阅读
    <b class='flag-5'>OpenHarmony</b> 成功亮相国际学术会议 ASPLOS 2024

    OpenHarmony南向能力征集令

    1、适配过程中缺少哪些接口能力或者南向能力,需要OpenHarmony去补齐的?例如内核、编译、器件适配、单板适配等; 2、对标linux,需要OpenHarmony提供哪些能力?比如V4L2
    发表于 04-09 15:32

    OpenHarmony内核编程实战

    编程入门[Hello,OpenHarmony]在正式开始之前,对于刚接触OpenHarmony的伙伴们,面对大篇幅的源码可能无从下手,不知道怎么去编码写程序,下面用一个简单的例子带伙伴们入门。▍任务
    的头像 发表于 03-27 08:31 732次阅读
    <b class='flag-5'>OpenHarmony</b>内核编程实战

    介绍一种OpenAtom OpenHarmony轻量系统适配方案

    本文在不改变原有系统基础框架的基础上, 介绍了一种OpenAtom OpenHarmony(以下简称“OpenHarmony”)轻量系统适配方案。
    的头像 发表于 03-05 09:24 1063次阅读
    介绍一种OpenAtom <b class='flag-5'>OpenHarmony</b>轻量<b class='flag-5'>系统</b>适配方案

    浅谈兼容 OpenHarmony 的 Flutter

    OpenHarmony SIG 组织在 Gitee 开源了兼容 OpenHarmony 的 Flutter。该组织主要用于孵化 OpenHarmony 相关的开源生态项目。     ▲ 仓库地址
    的头像 发表于 02-02 15:22 568次阅读
    浅谈兼容 <b class='flag-5'>OpenHarmony</b> 的 Flutter

    OpenHarmony Meetup 2023南京站亮点抢先看

    点击蓝字 ╳ 关注我们 开源项目 OpenHarmony 是每个人的 OpenHarmony 原文标题:OpenHarmony Meetup 2023南京站亮点抢先看 文章出处:【微信公众号:OpenAtom
    的头像 发表于 12-25 21:10 555次阅读
    <b class='flag-5'>OpenHarmony</b> Meetup 2023南京站亮点抢先看

    openharmony开发应用

    随着智能设备的普及和多样化,开发者们对于更加灵活、高效的操作系统需求与日俱增。在这个背景下,华为推出了OpenHarmony,一个全场景智能终端操作系统和生态平台。本文将详细探讨
    的头像 发表于 12-19 09:42 642次阅读

    培育根技术人才 共建OpenHarmony根社区未来 | OpenHarmony打造下一代智能终端操作系统根社区,繁茂人才生态

    点击蓝字 ╳ 关注我们 开源项目 OpenHarmony 是每个人的 OpenHarmony 2023年12月12日,OpenHarmony人才生态大会(以下简称“大会”)在上海召开。本次大会以
    的头像 发表于 12-15 16:15 377次阅读

    OpenHarmony Meetup 2023北京站圆满举办

    OpenHarmony 正当时”OpenHarmony Meetup 2023 城市巡回活动,旨在通过 meetup 线下交流形式,解读 OpenHarmony 作为下一代智能终端操作系统
    发表于 11-29 09:51

    OpenHarmony Meetup 2023北京站圆满举办

    meetup线下交流形式,解读OpenHarmony作为下一代智能终端操作系统的新版本及成果转化,提升开发者对OpenHarmony的关注度,普及OpenHarmony开发技能,加速开
    的头像 发表于 11-28 21:10 613次阅读
    <b class='flag-5'>OpenHarmony</b> Meetup 2023北京站圆满举办