前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >浅谈Python Django框架

浅谈Python Django框架

作者头像
小小科
发布于 2018-08-17 08:24:29
发布于 2018-08-17 08:24:29
2.5K00
代码可运行
举报
文章被收录于专栏:北京马哥教育北京马哥教育
运行总次数:0
代码可运行

来源:码农程序

ID:PyExChange

1、Django简介

Python下有多款不同的 Web 框架,Django是最有代表性的一种。许多成功的网站和APP都基于Django。

Django是一个开源的Web应用框架,由Python写成。

Django采用了MVC的软件设计模式,即模型M,视图V和控制器C。

2、Django的特点

1) 强大的数据库功能:用python的类继承,几行代码就可以拥有一个动态的数据库操作API,如果需要也能执行SQL语句。

2) 自带的强大的后台功能:几行代码就让网站拥有一个强大的后台,轻松管理内容。

3) 优雅的网址:用正则匹配网址,传递到对应函数。

4) 模板系统:强大,易扩展的模板系统,设计简易,代码和样式分开设计,更易管理。

5) 缓存系统:与memcached或其它缓存系统联用,表现更出色,加载速度更快。

6) 国际化:完全支持多语言应用,允许你定义翻译的字符,轻松翻译成不同国家的语言。

3、Django项目目录

1) urls.py:网址入口,关联到对应的views.py中的一个函数(或generic类),访问网址就对应一个函数。

2) views.py:处理用户发出的请求,与urls.py对应, 通过渲染templates中的网页可以将显示内容,如登陆后的用户名,用户请求的数据等输出到网页。

3) models.py:与数据库操作相关,存入或读取数据时用到,用不到数据库时可以不使用。

4) forms.py:表单,用户在浏览器上输入数据提交,对数据的验证工作以及输入框的生成等工作,也可以不使用。

5) templates文件夹:views.py中的函数渲染templates中的html模板,得到动态内容的网页,可以用缓存来提高速度。

6) admin.py:后台,可以用很少的代码就拥有一个强大的后台。

7) settings.py:Django 的配置文件,如 DEBUG 的开关,静态文件的位置等。

4、Django基本命令

1) 新建一个项目:

  1. django-admin.py startproject project-name

在 windows 上如果报错,尝试用 django-admin 代替 django-admin.py 。

2) 新建一个APP:

  1. python manage.py startapp app-name

  1. django-admin.py startapp app-name

一般一个项目有多个app, 当然通用的app也可以在多个项目中使用。

3) 启动服务器:

  1. python manage.py runserver 0.0.0.0:8000

  1. python manage.py runserver

前者让其它电脑可连接到服务器,监听机器上所有ip的8000端口,访问时用电脑的ip代替 127.0.0.1(8000为端口号,如果不说明,则端口号默认为8000);后者在本电脑访问服务器,访问时ip为127.0.0.1。

5、视图与网址

views.py:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
from django.http import HttpResponse   
def helloWorld(request):   
    return HttpResponse("Hello world! ")  

urls.py:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
from django.conf.urls import url  
from . import view  
urlpatterns = [  
    url(r'^$', view.helloWorld)  
]  

启动服务器,并在浏览器访问:127.0.0.1:8000。

修改后的urls.py:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
from django.conf.urls import url  
from . import view  
urlpatterns = [  
    url(r'^helloWorld$', view.helloWorld)  
]  

启动服务器,并在浏览器访问:127.0.0.1:8000/helloWorld。

url() 函数:可以接收四个参数,分别是两个必选参数regex、view 和两个可选参数kwargs、name:

① regex:正则表达式,与之匹配的 URL 会执行对应的第二个参数 view。

② view:用于执行与正则表达式匹配的 URL 请求。

③ kwargs:视图使用的字典类型的参数。

④ name:用来反向获取 URL。

6、Django模板

1) 实例:

① 在app目录中,创建 templates 目录并建立 helloWorld.html文件:

  1. <h1>{{ helloWorld }}</h1>

② 向Django说明模板文件的路径,修改settings.py文件,修改 TEMPLATES 中的 DIRS 为 [BASE_DIR+"/templates",]。

③ 修改views.py:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
from django.shortcuts import render  
def hello(request):  
    context = {}  
    context['helloWorld'] = 'Hello World!'  
    return render(request, 'helloWorld.html', context)  

render使用了一个字典 context 作为参数,context 字典中元素的键值 "helloWorld" 对应了模板中的变量 "{{ helloWorld }}"。

④ 启动服务器,并在浏览器访问:127.0.0.1:8000/helloWorld。

2) Django 模板标签

① if/else 标签

if/else支持嵌套,{% if %} 标签接受and、or 或not关键字来对多个变量做判断,或对变量取反。

  1. {% if condition %}
  2. ...
  3. {% endif %}

或者:

  1. {% if condition1 %}
  2. ...
  3. {% elif condiiton2 %}
  4. ...
  5. {% else %}
  6. ...
  7. {% endif %}

② for 标签

{% for %} 允许在一个序列上迭代。支持嵌套。每一次循环中,模板系统会渲染在 {% for %} 和 {% endfor %} 之间的所有内容。

  1. <ul>
  2. {% for person in list %}
  3. <li>{{ person.name }}</li>
  4. {% endfor %}
  5. </ul>

给标签增加一个 reversed 使得该列表被反向迭代:

  1. {% for person in list %}
  2. ...
  3. {% endfor %}

③ ifequal/ifnotequal 标签

{% ifequal %} 标签比较两个值,当他们相等时,显示在 {% ifequal %} 和 {% endifequal %} 之中所有的值。和 {% if %} 类似, {% ifequal %} 支持可选的 {% else%} 标签。

  1. {% ifequal person1 person2 %}
  2. <h1>YES</h1>
  3. {% endifequal %}

④ 注释标签

Django 注释使用 {# #}。

⑤ 过滤器

模板过滤器可以在变量被显示前修改它,过滤器使用管道字符:

{{ name|lower }}大写转换为小写。

一个过滤器管道的输出又可以作为下一个管道的输入:

{{ name|first|upper }}将第一个元素转化为大写。

有些过滤器有参数,过滤器的参数跟随冒号之后并总是以双引号包含:

{{ name|truncatewords:"3" }}显示变量的前3个词。

addslashes:添加反斜杠到任何反斜杠、单引号或者双引号前面。

date:按指定的格式字符串参数格式化date或datetime对象,如{{ pub_date|date:"F j, Y" }}。

length:返回变量的长度。

⑥ include 标签

{% include %} 标签允许在模板中包含其它的模板的内容。

  1. {% include "test.html" %}

7、Django模型

Django 对各种数据库提供了很好的支持,Django 为数据库提供了统一的调用API,可以根据业务需求选择不同的数据库。

以MYSQL数据库为例,安装 mysql 驱动的命令:sudo pip install mysqlclient。

1) 数据库配置

在项目的settings.py文件中找到 DATABASES 配置项,将其信息修改为:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
DATABASES = {  
    'default': {  
        'ENGINE': 'django.db.backends.mysql', # 或者使用 mysql.connector.django  
        'NAME': 'test',  
        'USER': 'test',  
        'PASSWORD': 'test123',  
        'HOST':'localhost',  
        'PORT':'3306',  
    }  
}  

这里添加了中文注释,所以需要在settings.py 文件头部添加 # -*- coding: UTF-8 -*-。

2) 定义模型

① 创建APP:

Django规定,如果要使用模型,必须要创建一个app,使用以下命令创建一个app:python manage.py startapp TestModel。

② 修改 TestModel/models.py 文件:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
from django.db import models  
class Test(models.Model):  
    name = models.CharField(max_length=20)  

类名代表了数据库表名,且继承了models.Model,类里面的字段代表数据表中的字段(name),数据类型则由CharField(相当于varchar)、DateField(相当于datetime), max_length 参数限定长度。

③ 在settings.py中找到INSTALLED_APPS这一项,添加:'TestModel'。

④ 在命令行中运行以下命令,创建数据表,表名为应用名_类名(如:TestModel_test):

view plain copy

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
python manage.py migrate   # 创建表结构  
python manage.py makemigrations TestModel  # 让Django知道模型有一些变更  
python manage.py migrate TestModel   # 创建表结构  

3) 数据库操作

添加database.py文件:

[python] view plain copy

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
from django.http import HttpResponse  
from TestModel.models import Test  
def database(request):  
    test = Test(name='Alice')  
    test.save()  
    return HttpResponse("<p>数据添加成功!</p>")  

修改 urls.py:

view plain copy

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
from django.conf.urls import *  
from . import view,database  
urlpatterns = [  
    url(r'^hello$', view.hello),  
    url(r'^database$', database.database)  
]  

启动服务器,并在浏览器访问:127.0.0.1:8000/database。

① 添加数据

[python] view plain copy

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
from django.http import HttpResponse  
from TestModel.models import Test  
def database(request):  
    test = Test(name='Alice')  
    test.save()  
    return HttpResponse("<p>数据添加成功!</p>")  

② 获取数据

[python] view plain copy

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
from django.http import HttpResponse  
from TestModel.models import Test  
def database(request):  
    # 初始化  
    response = ""  
    response1 = ""  
    # 通过objects这个模型管理器的all()获得所有数据行,相当于SQL中的SELECT * FROM  
    list = Test.objects.all()  
    # filter相当于SQL中的WHERE,可设置条件过滤结果  
    response2 = Test.objects.filter(id=1)  
    # 获取单个对象  
    response3 = Test.objects.get(id=1)  
    # 限制返回的数据,相当于SQL中的OFFSET 0 LIMIT 2;  
    Test.objects.order_by('name')[0:2]  
    # 数据排序  
    Test.objects.order_by("id")  
    # 上面的方法可以连锁使用  
    Test.objects.filter(name="Alice").order_by("id")  
    # 输出所有数据  
    for var in list:  
        response1 += var.name + " "  
    response = response1  
    return HttpResponse("<p>" + response + "</p>")  

③ 更新数据

[python] view plain copy

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
from django.http import HttpResponse  
from TestModel.models import Test  
def database(request):  
    # 修改id=1的name字段再save,相当于SQL中的UPDATE  
    test = Test.objects.get(id=1)  
    test.name='Alice'  
    test.save()  
    # 另一种方式  
    # Test.objects.filter(id=1).update(name='Alice)  
    # 修改所有的列  
    # Test.objects.all()..update(name='Google')  
    return HttpResponse("<p>数据修改成功</p>")  

④ 删除数据

删除数据库中的对象只需调用该对象的delete()方法即可:

[python] view plain copy

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
from django.http import HttpResponse  
from TestModel.models import Test  
def database(request):  
    # 删除id=1的数据  
    test = Test.objects.get(id=1)  
    test.delete()  
    # 另外一种方式  
    # Test.objects.filter(id=1).delete()  
    # 删除所有数据  
    # Test.objects.all().delete()  
    return HttpResponse("<p>数据删除成功</p>")  

8、Django表单

1) Get方法

① 创建一个 search.py 文件,用于接收用户的请求:

[python] view plain copy

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
from django.http import HttpResponse  
from django.shortcuts import render_to_response  
# 表单  
def search_form(request):  
    return render_to_response('search_form.html')  
    # 接收请求数据  
    def search(request):  
    request.encoding='utf-8'  
    if 'q' in request.GET:  
        message = '搜索的内容为: ' + request.GET['q'].encode('utf-8')  
    else:  
        message = '提交了空表单'  
    return HttpResponse(message)  

② 在templates中添加 search_form.html 表单:

[html] view plain copy

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<!DOCTYPE html>  
<html>  
    <head>  
        <meta charset="utf-8">  
        <title></title>  
    </head>  
    <body>  
        <form action="/search" method="get">  
            <input type="text" name="q">  
            <input type="submit" value="搜索">  
        </form>  
    </body>  
</html>   

③ 修改urls.py:

[python] view plain copy

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
from django.conf.urls import url  
from . import view,database,search  
urlpatterns = [  
    url(r'^helloWorld$', view.helloWorld),  
    url(r'^database$', database.database),  
    url(r'^search-form$', search.search_form),  
    url(r'^search$', search.search)  
]  

④ 启动服务器,并在浏览器访问:127.0.0.1:8000/search_form。

2) Post方法

① 在templates中添加 post.html 表单:

[python] view plain copy

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<!DOCTYPE html>  
<html>  
    <head>  
        <meta charset="utf-8">  
        <title></title>  
    </head>  
    <body>  
        <form action="/search-post" method="post">  
            {% csrf_token %}  
            <input type="text" name="q">  
            <input type="submit" value="搜索">  
        </form>  
        <p>{{ rlt }}</p>  
    </body>  
</html>  

{% csrf_token %}标签:csrf 全称是 Cross Site Request Forgery,这是Django提供的防止伪装提交请求的功能。POST 方法提交的表格,必须有此标签。

② 新建 search2.py 文件并使用 search_post 函数来处理 POST 请求:

[python] view plain copy

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
from django.shortcuts import render  
from django.views.decorators import csrf  
# 接收POST请求数据  
def search_post(request):  
    ctx ={}  
    if request.POST:  
        ctx['rlt'] = request.POST['q']  
    return render(request, "post.html", ctx)  

③ 修改urls.py:

[python] view plain copy

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
from django.conf.urls import url  
from . import view,database,search  
urlpatterns = [  
    url(r'^helloWorld$', view.helloWorld),  
    url(r'^database$', database.database),  
    url(r'^search-form$', search.search_form),  
    url(r'^search$', search.search)  
    url(r'^search-post$', search2.search_post)  
]  

④ 启动服务器,并在浏览器访问:127.0.0.1:8000/search_post。

*声明:推送内容及图片来源于网络,部分内容会有所改动,版权归原作者所有,如来源信息有误或侵犯权益,请联系我们删除或授权事宜。

- END -


本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-08-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 马哥Linux运维 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
智慧城市产业应用实践,高精度火灾烟雾检测方案详解
据报道,2021年全国消防救援队伍共接报火灾74.8万起,死亡1987人,受伤2225人,直接财产损失67.5亿元。传统靠人工报警的方法存在人员管理难、场地数量多且分散等问题,无法有效发现险情降低火灾损失。为了保障民众的生命财产安全,应用AI技术及时、自动检测监控区域内的烟雾和火灾至关重要。
用户1386409
2022/04/19
3670
智慧城市产业应用实践,高精度火灾烟雾检测方案详解
公共场所人流数据统计如何实现?解决重识别、漏检等检测难题
当前疫情形势严峻,商场、火车站、地铁口等公共场所对人员流量的统计至关重要。“每天进出多少人?” “现在商场中人员数量有多少?”这些关键数据直接影响到相关防疫管控措施。因为人员基数较大、流动性较高,通过人工来进行流量统计费时费力,更难保障准确性。针对上述难点,大量场景开始使用深度学习中视觉技术来解决此类问题。
用户1386409
2022/08/31
1.2K0
智慧零售产业应用实战,30分钟上手的高精度商品识别
然而,相较更加普遍的人脸识别技术来说,商品识别在实际的产业应用中也面临着其独有的巨大挑战:
用户1386409
2022/04/19
8010
智慧零售产业应用实战,30分钟上手的高精度商品识别
人工智能如何助力市政垃圾清洁?垃圾检测全流程方案详解
环境卫生是城市的名片,智慧环卫更是智慧城市中不可缺少的板块。随着作业严格化、服务综合化、人口老龄化等趋势的发展,环卫行业面临诸多新问题和新挑战,而AI技术的发展成为一大助力,帮助环卫智能升级,实现设施智能化、运营管理信息化、分析决策智慧化。如何充分利用现有的环卫车辆和设备,对城市整洁度实现实时的监控?如何在减少人工的前提下,更及时地发现问题,解决问题?如何有效监督环卫作业的完成质量?
用户1386409
2022/08/31
9070
PaddleX全流程开发工具公开邀测啦!
依托飞桨开源深度学习框架和丰富的工具组件,PaddleX进行全流程的整合打通,为开发者提供飞桨全流程开发的最佳实践。它集飞桨核心框架、模型库、工具及组件等深度学习开发所需全部能力于一身,提供简明易懂的Python API,方便用户根据实际生产需求进行直接调用或二次开发,是提升深度学习项目开发效率的最佳辅助工具。这套工具的公测版于2020年3月30日在飞桨官网上发布,我们诚挚地邀请您试用,并根据您的意见不断进步及演化,让它助力每一位深度学习开发者实现无限创造。
用户1386409
2020/04/15
5830
如何轻松上手3D检测应用实战?飞桨产业实践范例全流程详解
随着深度学习技术的快速发展,3D检测技术作为关键发展方向之一,在机器人视觉、城市视觉、增强现实等领域发挥重要作用。传统依靠激光雷达的3D检测方法存在传感器昂贵,难以大规模广泛部署、点云缺失纹理信息、分辨率低等问题。建立单目3D检测模型,有效地利用了图像相对于点云的各个优势,以更低的成本部署到实际应用场景。
用户1386409
2022/08/31
3790
基于OpenVINO部署的工业缺陷检测产业实践范例实战
在当前发展阶段,制造企业普遍面临着诸多的挑战,包括如何改善工作效率以提升行业竞争力,如何降低生产过程中的产品不良率等,从而优化产业成本,其中缺陷检测便是最典型的场景之一。人工肉眼检测的识别效率低,且成本较高,传统机器的方法可扩展性又较差,深度学习技术为上述问题提供了一条解决之道。通过在智能制造系统中使用深度学习技术,制造企业将能够获得自动视觉定位缺陷位置,辨别缺陷种类,真正实现降本增效的目的。
用户1386409
2022/08/31
7780
又一神器面世:百度重磅发布「全流程开发套件」!
最近在做一个工业巡检的项目,主要涉及的内容是指针型表计的读取。本系列文章主要介绍实现表计读取的全流程开发。其中主要使用的工具为飞桨全流程开发工具 PaddleX 和 Visual Studio 2019。
GitHubDaily
2020/11/05
6060
又一神器面世:百度重磅发布「全流程开发套件」!
工业党福利:使用PaddleX高效实现指针型表计读取系列文章(1)
最近在做一个工业巡检的项目,主要涉及的内容是指针型表计的读取。本系列文章主要介绍实现表计读取的全流程开发(立个FLAG,想想真是肝...留下了不争气的眼泪),其中主要使用的工具为百度开发的PaddleX和Visual studio 2019。
用户7699929
2020/08/27
9760
工业党福利:使用PaddleX高效实现指针型表计读取系列文章(1)
人员出入管理效率如何提升?超轻量图像分类方案详解
近几年,人工智能计算机视觉技术在安防、工业制造等场景的产业智能化升级进程中发挥着举足轻重的作用。“人员进出管理”作为各行业中的关键场景,应用需求十分迫切。如居家防盗、机房管理以及景区危险告警等场景,需要对异常目标(人、车或其他物体)不经允许擅自进入规定区域进行及时检测。利用深度学习视觉技术,可以及时准确地对闯入行为进行识别并发出告警信息,切实保障人员的生命财产安全。相比传统人力监管的方式,不仅可以实现7X24小时不间断的全方位保护,还能极大地降低管理成本,解放劳动力。
用户1386409
2022/08/31
3360
接球小游戏玩腻了?换个姿势让PaddleX帮你吊打游戏系统
这个小游戏你是不是自打会走路开始就在玩了呢?但是不是也还是会输给游戏系统得不到高分?不用怀疑自己手残,让我们走进AI的世界,尝试使用飞桨PaddleX开发一款“莫得感情”的自动接球程序,实现一顿让朋友们目瞪口呆、让游戏系统"自我怀疑"的操作吧!
用户1386409
2020/08/20
5190
接球小游戏玩腻了?换个姿势让PaddleX帮你吊打游戏系统
多种方式实现安全帽佩戴检测
在安全帽和工作人员的身份标识上安装 RFID 标签,通过 RFID 读写器检测标签信号来判断安全帽的佩戴状态。
音视频牛哥
2024/10/19
2060
多种方式实现安全帽佩戴检测
​小度巡检机器人上岗记:飞桨PaddleX助力实现室内精准巡检
百度大厦的一名安保人员手机里弹出这样一条信息。发信息的是他的“新同事”,一位近期上岗百度深研大厦的智能助手——小度巡检机器人。
用户1386409
2020/06/16
6840
​小度巡检机器人上岗记:飞桨PaddleX助力实现室内精准巡检
昇腾AI行业案例(二):基于 AI 图像处理的安全帽检测
欢迎学习《昇腾行业应用案例》的 “基于 AI 图像处理的安全帽检测” 实验。在本实验中,你将深入了解如何运用计算机视觉(CV)领域的 AI 模型,搭建一个高效精准的安全帽检测系统,并利用开源数据集对模型效果加以验证。为此,我们将使用昇腾的AI硬件以及CANN等软件产品。
AI布道Mr.Jin_2025
2025/01/16
600
一站式完成车牌识别任务:从模型优化到端侧部署
交通领域的应用智能化不断往纵深发展,其中最为成熟的车牌识别早已融入人们的日常生活之中,在高速公路电子收费系统、停车场等场景中随处可见。一些企业在具体业务中倾向采用开源方案降低研发成本,但现有公开的方案中少有完成端到端的车牌应用范例。
用户1386409
2022/08/31
8760
手把手教学电瓶车进电梯检测、多类别车辆追踪、异常行为检测产业级应用
近日,媒体接连报道电动车起火爆炸造成严重人员伤亡的新闻,针对该问题,社区物业明令禁止电瓶车入户,但是依然有人忽视这个问题严重性。目前,AI应用已经可以有效地预防此类问题,在进入电梯的时候就可以采取报警和有效措施。AI在安防领域的应用非常广泛,在各类公共场合迅速识别人员摔倒、打架、争吵,以及车辆行驶异常等行为,可以及时通知安保人员进行干预。
用户1386409
2022/03/31
4610
手把手教学电瓶车进电梯检测、多类别车辆追踪、异常行为检测产业级应用
《智能安全帽检测:科技赋能安全管理的深度解析》
在众多高风险的工作场景中,如建筑施工、工业生产、矿山开采等,安全帽的正确佩戴对于保障工作人员的生命安全至关重要。然而,传统的人工监督方式在面对大规模、复杂环境的作业现场时,往往显得力不从心。随着人工智能技术的蓬勃发展,智能安全帽检测算法服务应运而生,为安全管理带来了全新的解决方案。今天,我们就来深入了解一下这背后的神奇技术以及相关的算法服务网站平台是如何发挥作用的。
用户11376901
2024/11/23
1220
如何低成本高效监控电瓶车违规停放行为?看看飞桨开发者怎么做
电动车以其环保节能、小巧便捷、经济实用等特性,市场需求逐年递增,但同时它带来的充电起火、电池爆炸等安全问题也时有发生。大部分小区物业都禁止电瓶车进电梯等违规停放行为,然而实际执行中往往难以监管。人工智能是否能帮助居民减少电瓶车违规停放带来的安全隐患呢?我们尝试用人工智能进行电瓶车检测,来减少人工检测的成本和压力。
用户1386409
2022/03/31
3180
如何低成本高效监控电瓶车违规停放行为?看看飞桨开发者怎么做
TSINGSEE青犀视频AI分析/边缘计算/AI算法·安全帽检测算法详解
安全帽检测算法主要是对人员安全和事故预防的需要。在许多工业领域和施工现场,佩戴安全帽是一种重要的安全措施,可以减少头部受伤的风险。然而,由于工地人员数量众多且繁忙,人工监控难以有效覆盖所有区域,因此旭帆科技推出了安全帽佩戴检测算法,助力施工现场安全,减少事故发生。
TSINGSEE青犀视频
2023/09/08
2210
两次霸榜GitHub!训练无需写代码,部署覆盖多平台
短短几个月的时间里,两次登上 GitHub Daily 全球趋势榜,迅速获得 1.4k Star,宁德时代、广东电网电科院、机科院等等巨头都在用的 AI 算法开发神器到底是什么!!!
CV君
2021/02/05
8670
两次霸榜GitHub!训练无需写代码,部署覆盖多平台
推荐阅读
智慧城市产业应用实践,高精度火灾烟雾检测方案详解
3670
公共场所人流数据统计如何实现?解决重识别、漏检等检测难题
1.2K0
智慧零售产业应用实战,30分钟上手的高精度商品识别
8010
人工智能如何助力市政垃圾清洁?垃圾检测全流程方案详解
9070
PaddleX全流程开发工具公开邀测啦!
5830
如何轻松上手3D检测应用实战?飞桨产业实践范例全流程详解
3790
基于OpenVINO部署的工业缺陷检测产业实践范例实战
7780
又一神器面世:百度重磅发布「全流程开发套件」!
6060
工业党福利:使用PaddleX高效实现指针型表计读取系列文章(1)
9760
人员出入管理效率如何提升?超轻量图像分类方案详解
3360
接球小游戏玩腻了?换个姿势让PaddleX帮你吊打游戏系统
5190
多种方式实现安全帽佩戴检测
2060
​小度巡检机器人上岗记:飞桨PaddleX助力实现室内精准巡检
6840
昇腾AI行业案例(二):基于 AI 图像处理的安全帽检测
600
一站式完成车牌识别任务:从模型优化到端侧部署
8760
手把手教学电瓶车进电梯检测、多类别车辆追踪、异常行为检测产业级应用
4610
《智能安全帽检测:科技赋能安全管理的深度解析》
1220
如何低成本高效监控电瓶车违规停放行为?看看飞桨开发者怎么做
3180
TSINGSEE青犀视频AI分析/边缘计算/AI算法·安全帽检测算法详解
2210
两次霸榜GitHub!训练无需写代码,部署覆盖多平台
8670
相关推荐
智慧城市产业应用实践,高精度火灾烟雾检测方案详解
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档