首页
学习
活动
专区
圈层
工具
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

骑上我心爱的小摩托,再挂上AI摄像头,去认识一下全城的垃圾!

车载软件使用经过修改的Darknet来运行Yolo v3,检测结果通过一个滤波和积累模块提供,该模块将避免在多个相邻视频帧中出现多次计算同一垃圾;它还将为一个”垃圾点”在大约5米半径范围内进行多次检测。...垃圾的GPS坐标通过简单的gpsd接口从usb模块读取,将数据存储在Google Firestore实时数据库中,这样本地的Google firebase SDK就被用于客户端应用程序开发。...应用程序 现代数据分析应用程序必须支持从任何设备和平台访问,而实时数据访问则需要使用适当的后端技术和能够支持用户查询的数据模型。...我们选择Ionic+Angular进行前端开发和谷歌的Firestore坐标实时数据库。...我们计划使用Firestore分布式计数器来添加更多的实时统计信息,例如基于区域的每个垃圾类型的每日和每周统计信息。 同样在后端。

10.3K30

Flow 操作符 shareIn 和 stateIn 使用须知

这样一来,我们便能在没有程序对位置更新感兴趣时避免资源的浪费。 Android 应用小提醒!...为了保持内部数据流始终处于活跃状态并发送位置更新,我们使用了共享策略 SharingStarted.Eagerly,这样就算没有收集者,也能一直监听更新。...以开源项目——Google I/O 的 Android 应用 iosched 为例,您可以在 源码中 看到,从 Firestore 获取用户事件的数据流是通过 callbackFlow 实现的。...Firestore 中注册为新的回调。...如果您只允许一个用户,并且收集者需要更新为观察新的用户,您可以向一个所有收集者共用的 SharedFlow 或 StateFlow 发送事件更新,并将公共数据流作为类中的变量。

4.7K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    MongoDB 3.6中的新功能 (1) - 发展的速度

    开发者优先 MongoDB一直是开发者优先的技术。其文档数据模型自然映射到应用程序代码中的对象,使开发人员可以轻松学习和使用。...变更流可实现跨分布式数据库和应用程序的无缝数据移动,使用完全的反应式编程风格,可以简单地在任何需要的地方流式数据更改和触发操作。...只要文档或集合被修改,应用程序就可以监听到通知,从而使下游应用程序和消费者能够实时处理新数据,而无需不断查询整个集合来对数据改动做处理。...应用程序可以直接使用,或者通过消息队列,或者通过MongoDB Stitch(即将推出)等后端服务来使用变更流。 MongoDB变更流启用的用例包括: 股票价格涨跌时候需要实时处理的交易类应用。...从现在开始,程序员不再需要实现自定义的客户端容错代码,而是可以在出现瞬时网络故障或主副本选举时由MongoDB驱动程序自动重试写入,MongoDB服务器会提供写入操作会执行一次并只有一次的语义保证。

    1.5K10

    TensorWatch:用于数据科学和机器学习的调试和可视化工具

    它适用于Jupyter Notebook,可显示机器学习训练的实时可视化,并执行模型和数据的其他几个关键可视化。...除了传统的所见即所得的方法外,它还具有针对您的实时ML训练流程执行任意查询的独特功能,作为查询结果返回流并使用您的选择查看此流可视化器(我们称之为延迟日志记录模式)。...从Jupyter Notebook中,从文件中加载以前记录的值,然后监听该TCP / IP套接字以获取任何未来值。可视化工具监听流并在值到达时呈现值。 好的,这是一个非常简化的描述。...甚至可以通过创建新的Python类,实现一些方法来创建自己的自定义可视化小部件。 比较多次运行的结果 每个TensorWatch流可能包含您选择的度量标准。...例如以下重点介绍导致Resnet50模型对Imagenet数据集的类240进行预测的区域: https://github.com/microsoft/tensorwatch/blob/master/notebooks

    3.6K52

    MVVM+数据绑定,让你的Android应用飞起来,MVVM+数据绑定技巧,打造Android应用的数据流水线!

    这种分离使得视图和模型的更新可以独立进行,从而降低了代码的耦合度,提高了系统的灵活性。此外,数据绑定技术的运用进一步简化了视图与视图模型之间的交互,使得数据更新更加高效、实时。...要实现双向数据绑定,通常需要借助其他方法或库,如使用MutableLiveData结合自定义的TextWatcher监听器,或者使用第三方库如Android Data Binding Library的扩展库...在不支持双向绑定的场景下,通过监听UI组件的更改事件(如文本输入、复选框选中状态变化等),并在事件处理逻辑中更新数据源。...3、状态管理框架: 使用状态管理框架(如Redux、MobX等)可以帮助开发者更好地管理应用的状态和数据流。这些框架通常提供了一套完整的解决方案,包括状态的定义、更新和同步等操作。...数据变更的监听与响应 监听: 除了通过LiveData来监听数据变化外,ViewModel还可以提供其他方式来监听数据变更,如使用回调接口、事件总线(EventBus)等。

    13310

    【Other】What is the Serverless architecture

    不,我们需要在其他地方拥有物理服务器来部署我们的应用程序。有网络服务器、文件服务器、邮件服务器......等等。现在我们使用的是云,所有云提供商都已在云上提供这些特定服务。...笨重的单一应用程序包含了一切。...无服务器函数是单一用途的编程函数。 它只是一个简单的函数。 开发人员可以专注于逻辑并创建一个函数,而云提供商将对其进行部署、扩展、维护和管理。 您可以使用云提供商支持的不同语言编写无服务器函数。...Firestore 是 GCP 针对无服务器的数据库解决方案。 这是一个实时数据库。 这是一个高度可扩展的 NoSQL 文档数据库。 数据通过可定制的安全和数据验证规则得到全面保护。...无服务器功能允许您只需为所消耗的使用量付费。请查看云服务提供商的定价部分。

    16030

    有赞埋点实践

    三、采集方式 数据模型设计好后,接下来要考虑的是如何将客户端内的用户行为数据采集到服务端,这里主要依赖于客户端提供的监听能力。...3.2 代码埋点 代码埋点是指依赖前端同学,自定义监听和收集处理。...实时流中间层是以JSON格式存储在kafka中,并且提供对应的JavaBean类,方便实时任务开发解析处理,并且也可以与streamSql相结合使用。...离线中间层是存储在同一个表中,字段与实时流格式保持一致,以日期和业务作为分区条件,并会自动创建所有业务的视图表,方便中间层的统一调整以及数仓的权限管理。...详细内容将在下篇埋点分享中介绍 7.5 埋点分析 早期埋点上线后,分析同学会根据埋点元数据,通过写sql或代码的方式,处理实时流和离线表来查询出想要的指标。

    2.6K21

    协程 Flow 最佳实践 | 基于 Android 开发者峰会应用

    Channels 是一种同步原语,而 Flows 是为数据流模型所设计的: 它是订阅数据流的工厂。不过我们可以使用 Channels 来支持 Flows,这一点我们稍后再说。...冷流" 是一种数据源,该类数据源的生产者会在每个监听者开始消费事件的时候执行,从而在每个订阅上创建新的数据流。一旦消费者停止监听或者生产者的阻塞结束,数据流将会被自动关闭。...在这种情况下,当新的监听者开始消费事件时,生产者不需要每次都被执行。 您依然可以向调用者提供 Flow,它们不需要知道具体的实现。...BroadcastChannel 实现 对于使用 Firestore 跟踪用户身份认证的数据流,我们使用了 BroadcastChannel API,因为我们希望注册一个有独立生命周期的 Authentication...,我们更建议向消费者暴露 Flow 而不是 Channel; 使用 Flow 时,生产者会在每次有新的监听者时被执行,同时数据流的生命周期将会被自动处理; 使用 BroadcastChannel 时,您可以共享生产者

    3.5K11

    Firestore 多数据库普遍可用:一个项目,多个数据库,轻松管理数据和微服务

    例如,你可以授予特定用户组仅对指定数据库的访问权限,从而确保强大的安全性和数据隔离。 这一新特性也简化了成本跟踪:Firestore 现在基于每个数据库提供细粒度的计费和使用分解。...几年前,为生产、staging 和开发创建不同的数据库的挑战就已凸显,导致一些开发人员使用前身 Firebase 实时数据库。...我看到 Firebase 实时数据库可以这样做,但我没有看到 Firestore 可以这样做的可能性。...Liu 和 Nguyen 补充道: 在创建过程中需要谨慎选择数据库资源名和位置,因为这些属性在创建后无法更改。不过你可以删除现有数据库,随后使用相同的资源名在不同的位置创建新数据库。...如果你的应用程序不需要多个数据库,谷歌建议继续使用 (默认) 数据库,因为 Cloud Firestore 客户端库和 Google Cloud CLI 在默认情况下连接的都是它。

    35110

    2021年11个最佳无代码低代码后端开发利器

    例如,Xano、Supabase、Firestore、Airtable,以及更多旨在提供更好的整体用户体验的产品。...它暴露了一个WebSocket端点,使任何前端应用程序能够进行实时通信。使用关系型数据库的好处是,它可以帮助你一直保持一致。 关系型数据库或SQL数据库是基于表的数据库。...在使用Supabase时,你将在其图形用户界面(GUI)中度过大部分时间。它还提供了一个SQL编辑器,你可以用它来编写自定义的SQL查询,以操作表中的数据。...它让你可以选择自我托管Supabase或使用他们的云服务来托管一个。 定价 免费版:每月0美元,有无限的API请求,实时功能,以及高达500MB的数据库空间。...Firestore有自己的内置安全系统。它可以帮助你定义规则,允许应用程序用户根据他们的认证状态来访问数据。它支持使用电子邮件/密码的传统签名提供者。

    12.6K20

    实时音视频 TRTC 常见问题汇总---小程序篇

    SDK ,为客户提供多平台互通高品质可定制化的 实时音视频互通服务 解决方案。...小程序端从微信7.0.12版本开始支持自定义流 ID,在 rtcConfig 构造时字段填写自定义流 ID,具体可以参考 Demo 实现。...(如不开通则无法正常使用) 出于政策和合规的考虑,微信暂未放开所有小程序对实时音视频功能(即 和 标签)的支持: - 小程序推拉流标签不支持个人小程序...,只支持企业类小程序。...在小程序端,音频流与视频流可分别进行单独的暂停推流设置,pusherInstance 中相关方法如下: 暂停视频流:pusherInstance 中提供了 pause 的方法,调用这个接口,远端会显示黑屏帧

    5.6K31

    解析 Node.js 中的 process.stdin 和 process.stdout

    Node.js 基于事件驱动的编程模型,因此 process.stdin 默认是处于暂停模式的。这意味着它不会自动开始读取数据,而需要明确调用方法或监听事件来实现输入流的处理。...数据管道:在 Linux 或其他类 Unix 系统中,输入流可以通过管道操作符传输到 Node.js 程序。...在流的实现中,Node.js 使用了 libuv 提供的底层 I/O 能力,配合事件循环机制,高效地管理数据的读写操作。数据流的事件驱动机制Node.js 中的流是基于事件的。...开发者可以通过监听 drain 事件来处理这种情况。对于 process.stdin 和 process.stdout,缓冲区大小由底层实现决定,但可以通过自定义流对象进行调整。...它们不仅支持简单的数据读取和写入,还可以通过流的事件机制和背压控制,实现复杂的实时数据处理应用。通过深入理解其工作原理,开发者可以更高效地利用这些工具构建健壮的应用程序。

    6000

    21.6k stars的牛逼项目还写啥代码啊?

    Appsmith 是一个用于构建、部署和维护内部应用程序的开源平台。您可以构建任何东西,从简单的 CRUD 应用程序、管理面板、仪表板到自定义业务应用程序和复杂的多步骤工作流程。...GitHub数据 21.6k stars 231 watching 1.9k forks 开源地址:https://github.com/appsmithorg/appsmith 项目主要的功能 使用现成的组件构建工作流...构建你的用户界面 使用我们的拖放式 UI 构建器构建您的 UI。...使用 45 多个预构建的、可自定义的小部件,包括表格、图表、列表、模式、表单等 连接到您的数据 使用我们的连接器连接到您的数据:数据库(PostgresQL、MongoDB、Amazon S3 等)、...SaaS 提供商(如 Google Sheets、Airtable、Twilio)或任何 GraphQL/REST API 将数据连接到 UI 部署你的应用

    1.5K30

    我们弃用 Firebase 了

    你可以编写实现实时数据同步的应用程序,而且不需要开发大量的传输逻辑。那些在自制即时通讯应用程序中使用了长轮询请求的的用户肯定会喜欢它。...事实上,Firebase 有许多方面是我们喜欢的: 使用 Firestore,许多客户端状态管理方面的挑战都不复存在,特别是与数据新鲜度有关的问题。 免费就可拥有的实时体验。...云 Firestore 安全规则写起来很有趣,在考虑客户端 - 服务器安全方面,这是一个可靠的模型。 开箱即用的身份验证很不错。(不过,在我们看来,其内置的 Firebase 邮件验证体验很糟糕)。...Firebase Hosting 不提供细粒度的文件控制:你可以部署整个应用程序,也可以什么都不部署。也许不常见,但我们在静态页面生成和调试 CDN 问题上遇到了限制。...这很棘手,因为 80 个端点并不算多,而且 Firebase 至今没有提供一种简洁的方法,让我们可以只部署更改后的 Cloud Function。

    32.7K30

    MongoDB 3.6中的新功能 (1) - 发展的速度

    开发者优先 MongoDB一直是开发者优先的技术。其文档数据模型自然映射到应用程序代码中的对象,使开发人员可以轻松学习和使用。...变更流可实现跨分布式数据库和应用程序的无缝数据移动,使用完全的反应式编程风格,可以简单地在任何需要的地方流式数据更改和触发操作。...只要文档或集合被修改,应用程序就可以监听到通知,从而使下游应用程序和消费者能够实时处理新数据,而无需不断查询整个集合来对数据改动做处理。...应用程序可以直接使用,或者通过消息队列,或者通过MongoDB Stitch(即将推出)等后端服务来使用变更流。 MongoDB变更流启用的用例包括: 股票价格涨跌时候需要实时处理的交易类应用。...从现在开始,程序员不再需要实现自定义的客户端容错代码,而是可以在出现瞬时网络故障或主副本选举时由MongoDB驱动程序自动重试写入,MongoDB服务器会提供写入操作会执行一次并只有一次的语义保证。

    1.5K10

    Vue.js + Node.js + Express + MySQL示例:构建全栈CRUD应用程序

    在这个页面中,你可以: 使用Publish/UnPublished按钮将状态更改成Published/Pending 使用Delete按钮从MySQL数据库中删除对象 使用Update按钮更新数据库中对象的详细信息...全栈CRUD应用程序架构 我们将构建一个如下体系结构的应用程序: ? Node.js Express导出REST API,并使用Sequelize ORM与MySQL数据库进行交互。...接下来,我们在models/index.js中添加MySQL数据库的配置,在models/tutorial.model.js中创建Sequelize数据模型。 controller中的教程控制器。...在tutorial.routes.js中处理所有CRUD操作(包括自定义查找器)的路由。...我们还介绍使用Express&Sequelize ORM的REST API的客户端-服务器体系结构,以及用于构建前端应用程序以发出HTTP请求和使用响应的Vue.js项目结构。

    25K21

    Flutter 移动端架构实践:Widget-Async-Bloc-Service

    事实上,一些状态管理的技术被普遍使用: Scoped Model以其简单而著称 BLoC也被广泛使用,借助于Streams和RxDart,它适用于更复杂的应用程序 在最近的Google I/O大会上,Flutter...团队向我们展示了如何使用Provider包和ChangeNotifier,用于在组件之间传递状态的更改。...如果有需要,我们甚至可以执行高级的流操作,例如通过combineLatest将流组合在一起。 但是要明确: 1.如果需要以某种方式组合,我建议在单个BLoC中使用多个流。...Provider为我们提供了一个简单灵活的API,我们可以使用它来向控件树添加任何我们想要的东西。它适用于BLoC、Service、数值甚至更多。...无论如何,我发现BLoCs在使用Firestore构建app时效果非常明显,其中数据通过流从后端流入app。 在这种情况下,通常将流进行组合或使用RxDart对其执行转换,BLoC很擅长这个。

    16.1K20

    【干货】手把手教你用苹果Core ML和Swift开发人脸目标识别APP

    CoreML提供的机器学习 API,包括面部识别的视觉 API、自然语言处理 API 。...在Cloud ML引擎上使用MobileNet训练模型; 4. 把训练好的模型导出,并将其部署到ML引擎中以提供服务; 5. 构建一个iOS前端,对训练过的模型做出预测请求。...我发现有一个Chrome扩展程序,可以下载Google种搜索的所有图片结果。 在标记图像之前,我将它们分成两个数据集:训练集和测试集。使用测试集测试模型的准确性。...将带有新框的图像保存到云存储,然后将图像的文件路径写入Cloud Firestore,以便在iOS应用程序中读取路径并下载新图像(使用矩形): ? ?...最后,在我的iOS应用程序中,可以监听图像Firestore路径的更新。如果检测到,我会下载图像,并与检测分数一起显示在应用程序中。这个函数将替换上面第一个Swift代码片段中的注释: ?

    14.9K60

    ExoPlayer播放音视频的使用介绍

    已注册的监听器会收到播放状态更改以及何时发生导致播放失败的错误的通知。 实现自定义播放控制的开发人员应该注册一个监听器,并在播放器的状态发生变化时使用它来更新控件。...ExoPlayer库专为此设计的,定义了许多接口和抽象基类,使应用程序开发人员可以轻松地替换库提供的默认实现。...LoadControl - 实现自定义的LoadControl允许应用程序开发人员更改播放器的缓冲策略。...(2)定制指南 如果自定义组件需要将事件报告回应用程序,我们建议您使用与现有ExoPlayer组件相同的模型,将事件监听器与Handler一起传递给组件的构造函数。...我们建议自定义组件使用与现有ExoPlayer组件相同的模型,以便在回放时允许应用程序重新配置,如 第七条中的 将消息发送到组件 所描述的那样。

    6.5K20

    Flutter 2.8正式版发布了,还不来看看

    sqlite 构建; freezed: 一个 Dart「语言补丁」,为定义模型、克隆对象、模式匹配等提供简单的语法; dart_code_metrics: 一个帮助您分析和提高代码质量的静态分析工具;...如果你正在使用特定于平台的原生代码构建插件,你可以 使用项目 pubspec.yaml 中的 pluginClass 属性 来实现,该属性将指定提供原生功能的原生类名: flutter: plugin...在这种情况下,你没有任何本地类可以使用,但你仍然希望将你的插件指定为仅支持某些平台。...你还必须提供 Dart 插件的类,有关详细内容,你可以在 Flutter 文档上阅读 Dart 平台实现文档 以了解更多。...服务,方便线上使用和体验 更方便构建认证和在实时查询 Firestore 数据的 UI 界面 Flutter 中使用 Firestore Object/Document 映射的支持进入 Alpha 版

    22.4K30
    领券