- 博客(76)
- 资源 (14)
- 问答 (2)
- 收藏
- 关注
原创 【Modelground】个人AI产品MVP迭代平台(1)——平台简介
Modelground(模型广场)是探索先进模型落地场景的“实验室”,旨在用技术改善生活。维护者是本人。目前,Modelground已经集成了部分模型:Mediapipe视频处理、神投手、AI健身计数等。当前,所使用的模型都是基于Mediapipe,后期会考虑集成入其他有意思的模型。
2024-06-02 09:00:00 709
原创 Cesium绘制不同间隔经纬线不重合问题
有个很有意思的现象,在Cesium中,如果我们添加不同间隔的矢量经纬线(例如:1度和0.25度,即每间隔固定度数,绘制一条经线或纬线),经线往往可以对应上,但是纬线会从在偏差。经纬线绘制时,arcType默认模式是GEODESIC(测地线),此时同一纬度,不同经度跨度的纬线是无法重叠的,但是经线由于都是经过地心的,所以可以重叠,如图。理论上,如果使用ArcType.RHUMB(方位线),应该是可以解决这个问题的,但是实现上看,依然存在一定的偏差,大概是几十米。
2024-10-13 11:59:09 283
原创 Cesium实时渲染原理浅析
注意,渲染必须是自动执行的,即在new Cesium.Viewer()时,useDefaultRenderLoop属性必须为true,或者直接不填(默认为true)。有意思的是,这是一个回调函数,这个方法内,我们可以返回计算得到的最新属性值,Cesium会在每次渲染时自动调用该回调函数,以渲染最新几何。如果不填,必须手动在一些鼠标操作,例如mouseMove里写主动触发渲染的方法,否则,无法渲染,CallbackProperty也不会被执行。这样,只要this.coors始终在变化,渲染几何就会实时更新。
2024-10-13 11:05:18 439
原创 【Modelground】个人AI产品MVP迭代平台(5)——神投手(实时投篮检测游戏)
神投手是我开发的一款移动端web实时投篮检测游戏,基于Mediapipe对象检测模型,提供数据集,训练出可识别篮框的模型。利用图像处理算法,检测篮球进框的场景。提供了两种模式:计数模式和计时模式,界面如下:点击开始按钮,进入游戏界面,对准篮框,手机保持静止后,点击录制,游戏开始。左上角显示进球数,右侧可以退出和标定篮框。这种算法的缺点是,手机不能移动,强依赖于图片的diff,另外,篮框的识别的准度和精度都有待提升(训练集是700+图片,似乎不够)。
2024-06-09 23:55:11 927 1
原创 【Modelground】个人AI产品MVP迭代平台(4)——Mediapipe视频处理网站介绍
这篇文章我将硬核介绍Modelground的第一个产品——Mediapipe视频处理!网站入口为,如图所示,欢迎体验。tip: 由于服务器带宽较小,初次加载模型需要一定的等待时间。Mediapipe视频处理在线生成Mediapipe各类模型处理后的视频,支持导出视频和自定义样式。效果如下图所示。整个网站分为两部分,左侧为模型选择器和模型配置模块,右侧上部分为视频流选择及导出选项,右侧下部分为视频处理效果。Mediapipe视频处理是Modelground的第一个孵化MVP产品。
2024-06-08 23:19:44 1143
原创 【Modelground】个人AI产品MVP迭代平台(3)——工程化架构设计
这套架构是我在开发Modelground过程中,逐渐摸索出来的比较成熟的架构。很多坑都是过程中发现并解决,并不是一开始就能考虑到的。总结而言,依赖monorepo多项目管理模式,实现项目依赖,并行开发。通过流水线模式,简化项目启动流程。通过公共模型服务,减少冗余静态文件复制动作,在打包时统一拷贝。以上,就是Modelground的工程化架构设计内容,极大减少了本人开发耗时,可以将精力集中在构思创意上。如果本文对你有帮助,希望能得到你的三连+订阅Modelground专栏。
2024-06-02 23:38:52 699
原创 【Modelground】个人AI产品MVP迭代平台(2)——网站从0-1部署教程
总体的费用是服务器99元+域名188元+域名证书0元=287元,使用时长1年,(域名10年)。总体耗时大概是2周以内,周期最长的是ICP备案审核和域名证书审核。以上,你就可以通过域名访问你自己的服务啦!感兴趣的小伙伴,记得订阅这个专栏,这个专栏提供保姆级从0-1的AI平台搭建实操,一定能帮助到你!
2024-06-02 12:00:49 1023 2
原创 吉他初学者学习网站搭建系列(1)——目录
利用周末时间搭建一个兴趣驱动的小网站,帮助吉他初学者更好地学习,目前已集成乐谱滚动播放、查和弦、调音、节拍器、制作乐谱等功能,欢迎使用
2023-11-25 23:05:28 1075
原创 源码学习系列——green-gis-server
源码学习系列——green-gis-server,仓库:https://github.com/ly15927086342/openSourceLearning
2022-09-03 17:54:08 717
原创 万语千言,不敌一纸情书
背景2.14就是情人节了,不知道各位读(直)者(男)想到了什么样的礼物,或者是还没有女盆友。。想来和女盆友在一起已经五年多了,想当年没少给她写情书。尽管后来这一个习惯断了,但是情书这种形式还是很有意义。现在作为一名理工男,想用技术来实现一个电子情书。我给这个项目起了一个挺浪漫的名字:一纸情书。实际上这个项目是去年疫情期间,我和女盆友异地,我花了一天时间做出来送给她的,她还挺喜欢的。网页链接:[https://railwayhs.cn/loveletter](https://railwayhs.c
2021-02-10 15:13:02 2707 13
原创 rasterio实用教程(5)——解决同一掩膜提取图像范围不一致问题
文章目录背景解决方案背景不同数据源做重采样或者投影变换后,用同一掩膜进行提取,往往会出现范围不一致的情况。这里说的范围不一致是指图像的上下左右平面坐标不完全一致,会出现细微的差别,导致栅格像素无法完全重叠。本文教大家如何解决该问题。解决方案我调研过rasterio,发现并没有解决方案。calculate_default_transform函数无法固定输出图像范围,只能固定输入图像范围,而输入图像因为不同源,往往是没法固定的。我的解决方案是引入arcpy包。arcpy是arcmap中的toolbo
2021-02-09 23:48:05 5840 7
原创 rasterio实用教程(4)——坐标系转换
文章目录背景实战背景在测绘领域中提到的坐标系有两种,一种是地理坐标系,用经纬度高程来表达;另一种是投影坐标系,即经过投影变换后的平面坐标系,通常是xy表达。坐标系转换有四种情况:地理坐标系转投影坐标系(也叫大地坐标正算)投影坐标系转地理坐标系(也叫大地坐标反算)一种地理坐标系转另一种地理坐标系一种投影坐标系转另一种投影坐标系本文的坐标系转换理论上涵盖以上四种情况。实战import numpy as npimport rasteriofrom rasterio.warp impor
2021-02-09 23:35:48 2831
原创 rasterio实用教程(3)——图像重采样
文章目录背景实战背景图像重采样是指改变图像的分辨率,通常指分辨率变小,即像素的宽高变长,是科研常用的操作。比如我们手头只有300m分辨率的图像,但是为了统一不同数据源的数据精度,需要统一为1000m分辨率,这时候就需要重采样。实战import numpy as npimport rasteriofrom rasterio.warp import calculate_default_transform, reprojectfrom rasterio import crsdataset = r
2021-02-09 23:14:16 2562 11
原创 rasterio实用教程(3)——图像掩膜提取
文章目录背景实战背景掩膜提取是指基于矢量面范围内的栅格像素值,并输出为新图像的操作。因为涉及矢量面数据获取,所以需要引入fiona包,未安装的读者请自行安装。实战import fionaimport rasterioimport rasterio.maskmask = 'D:/A_2021寒假/城市群相关/Data/0Slab中国基础地理数据/China/China_single.shp'src_img = 'input.tif'dst_img = 'output.tif'# 读取
2021-02-09 22:52:25 3666 8
原创 rasterio实用教程(2)——图像镶嵌
文章目录背景实战注意事项背景图像镶嵌指讲几张栅格图像镶嵌到同一张图像中,也就是拼接图像。栅格图像是有明确的坐标系和空间范围的,因此待镶嵌的图像必须有一样的地理坐标坐标系或者投影坐标系,否则是无法镶嵌在同一坐标系中的。本文使用的是gdal,而不是rasterio,但rasterio是基于gdal的,本文默认你已经安装好了gdal,没有装的请移步我的geopandas安装教程。实战from osgeo import gdal, gdalconsttifPath = './data/' # 待融合的
2021-02-09 22:29:04 1479 1
原创 rasterio实用教程(1)——图像读写
文章目录背景安装简介基操图像读取图像写入展望背景最近在做一些和图像处理相关的工作,涉及利用rasterio来实现遥感影像的镶嵌、重采样、重投影等,故开一个系列记录下来。rasterio是栅格图像处理的python包,依赖GDAL,如果你想了解如何二安装GDAL,可以转到我的另一篇博文。安装在GDAL安装完成的基础上,到这个网站下载对应版本的rasterio包,然后运行以下命令安装whl文件,即可安装好rasterio。pip install xxx.whl简介rasterio的完整接口可以
2021-02-09 22:02:42 4894 1
原创 python3.7+win10环境下,geopandas的安装教程
文章目录环境下载wheel文件安装查看是否安装成功其他geopandas的安装需要gdal、Fiona,如果版本不一致,很容易安装失败,如图。网上有很多教程,如Anaconda等,但是我试了都不行,因为我的电脑以前用c++编译过gdal,还装过osgeo等,所以版本比较乱,容易出问题。今天就给大家出一个100%成功的安装方式!环境python 3.7.0 64bitwin10下载wheel文件网址:https://www.lfd.uci.edu/~gohlke/pythonlibs/在该
2021-01-11 13:54:49 2330 8
原创 2020,非专科前端的自我救赎
目录实习秋招成果1. 约球online小程序的2.0版本2. 百度个性化地图及遥感图瓦片下载合成器3. 通用爬虫框架4. 基于栅格图像的城市边界识别软件5. BikeMap6. SharePics结语无意间看到CSDN的年度征文活动,想借这个契机写写我2020年的经历。本人是某高校地信(GIS)专业的学硕,现在已经是研三了。地信这个专业算是一个交叉学科,属于测绘的一个分支。理论上无非是一些空间分析或者制图综合,技术方面就是一些数据库和可视化等。就开发这个层面而
2021-01-10 21:43:57 387
原创 基于行政区划的百度个性化地图及遥感影像栅格瓦片下载合成器(可叠加行政区划,适合用作科研遥感影像附图)
文章目录背景背景我们知道,地图分为栅格和矢量两种。以往基本都是栅格地图,后来随着技术发展和地理数据不断积累,矢量地图慢慢开始流行。现在网络上看到的百度、高德、腾讯地图等,基本都是基于矢量切片来显示的,而遥感卫星影像,自然还是栅格切片。百度地图个性在线编辑器旧版...
2020-11-23 17:28:13 2687 8
原创 通用型静态网页爬虫框架介绍region-based-crawler——以赶集网租房为例
文章目录痛点简介特点适用范围爬虫原理案例总结痛点说下为什么写这么一个爬虫框架?我们用python爬取静态页面,其实并不难,用bs4之类的库就可以基本解决节点解析取值的功能,我们往往觉得麻烦的地方在于:每次爬不同的网站要重新写一整套包括解析、存储、多线程、容错、日志等功能的爬虫,有没有一套框架,可以把所有可复用的功能封装起来,只把解析这部分工作丢给开发者呢?而把相同的部分封装,不同的部分暴露给开发者,其实本身就映射了某一种设计模式,这种设计模式叫做模板方法设计模式。该设计模式将相同的功能和流程控制放
2020-11-10 15:56:39 318
原创 【约球online】小程序构建系列教程第三话——地图点聚合功能实现
文章目录前言需求聚合算法具体实现调用时机前言用过微信小程序的map组件开发地图的同学,应该知道mapcontext这个对象的api相当少,功能远不如百度、腾讯、高德地图的JavaScript API。如果要实现聚合、热力图等,都必须自己动手实现。地图开发最常见的一个需求就是展示点要素,如果需要展示大量的点要素,如果全部展示,不仅渲染上存在很大的开销,而且也会存在图标压盖等问题,影响体验,因此就需要有点聚合的功能,并且随地图缩放来自动重算。这篇教程就交大家如何实现一个通用的点聚合功能,并在文末附上源码
2020-10-11 22:51:42 3097 6
原创 【约球online】小程序构建系列教程文章目录
目录文章导航项目简介关于教程文章导航【约球online】小程序构建系列教程第一话——技术选型及架构设计【约球online】小程序构建系列教程第二话——合理使用websocket【约球online】小程序构建系列教程第三话——地图点聚合功能实现项目简介约球online小程序是个人开发的一款实时约球小程序,属于个人主体类小程序,服务类目为信息查询和报名/预约。目前正常运营,暂未做推广。小程序码如上图所示,感兴趣的朋友可以扫码体验。该小程序整包代码600+k,基于uniapp框架开发,主要技术是v
2020-10-11 12:00:58 679 1
原创 利用ssh config管理多个git
文章目录背景生成多个ssh-key在远程仓库添加ssh-keyconfig文件配置检测ssh配置背景用过github的都知道,可以通过两种方式获取远程repo。第一种是ssh,第二种是https。选择ssh是更安全的一种方式,而使用ssh需要在本地生成公匙和私匙,然后在远程仓库配置公匙,才可以连接成功。通常情况下,我们只需要在本地生成一个ssh-key即可,但是如果我们有多个远程仓库账号,比...
2020-05-05 15:05:00 2136
原创 微信小程序图片内容审核功能云函数+小程序端代码完整实现【填坑】
文章目录背景实现技术栈小程序端基本思路主要代码云函数思考主要参考背景开发微信小程序的同学如果涉及了社交类目,应该都会碰到由于缺少内容审核机制导致不过审的情况。微信小程序官方实际上提供了图片、文本、视频的审核接口,可以通过https和云函数两种方式调用,对于一些小项目的前端开发者而言,云函数是非常方便的一种选择。一般来说,文本检测的接口没什么难度,比较容易出问题的是图片检测的实现(视频接口本人没...
2020-05-02 18:45:55 4161
原创 手把手教你搭建一个【文件共享平台】系列教程目录树
本文是手把手教你搭建一个【文件共享平台】系列教程的导航页,方便读者快速找到需要的博文。第一话 你想知道的,这里都有第二话 环境搭建第三话 Koa初步使用(路由、静态文件、session、跨域)第四话 node.js与mongodb的交互,封装基本操作第五话 koa后端路由实现用户基本功能模块第六话 koa后端路由处理文件读写+CURD第七话 node后端生成缩略图(gm库使用)未完...
2020-03-17 11:01:12 1582 4
原创 手把手教你在windows下frp内网穿透,访问内网服务不是梦
文章目录背景技术列表方案frpwinsw具体实施服务端客户端添加windows服务总结背景之前对内网穿透一无所知,后来听到这个名词,才发现内网穿透的魅力。什么是内网穿透?内网穿透就是让外网电脑能够找到处于内网的电脑,从而相互通信。最常用的例子就是让外网可以访问你内网的web服务。本篇文章就完整地教大家如何在windows环境下实现多个二级域名的内网穿透,并且开机自启动该服务。看完该教程,你仅...
2020-01-25 19:54:09 9543 3
原创 uniapp开发h5页面实现图片预加载功能
背景h5页面,很多时候存在大量的图片、动画,这些都需要下载大量的静态资源,如果我们直接打开页面,会发现部分图片正在加载或者还未下载的现象,严重影响体验效果。为了解决这个问题,我们需要进行图片预加载的操作。什么是图片预加载?简单来说,图片预加载就是在页面渲染前把所有的图片、GIF等静态资源全部下载完毕,使得页面渲染后直接打开缓存的图片资源,从而减少卡顿的问题,优化用户体验。那么如何在h5中...
2020-01-24 17:24:44 12580 2
原创 uniapp开发h5页面,实现背景音乐播放+暂停
背景我们平常见到的h5页面,大多数都有背景音乐,打开页面自动播放,该文教大家如何利用uniapp开发h5,实现内置音乐播放、暂停,以及音乐icon的旋转和暂停动画。创建音乐对象代码如下:var innerAudioContext = uni.createInnerAudioContext();innerAudioContext.autoplay = true;//自动播放innerAu...
2020-01-24 17:03:38 12473 7
原创 解决uniapp开发h5页面时使用canvas字体显示大小有误问题
背景用uniapp开发h5页面,如果你使用canvas画图,可能会用到canvasContext.setFontSize()这个函数,经过测试,如果设置的size是小数,那么在csdn、知乎等内置浏览器中访问,字体大小是不正确的。解决方法用Math.round()等取整函数,将小数转为整数,再赋值。建议最好使用canvas中,涉及数字的都取整,不要用小数,以免出现其他问题!...
2020-01-04 16:47:25 2676
河北省各行政区划遥感图(来源百度地图)
2020-12-22
北京市各行政区划遥感图(来源百度地图)
2020-12-22
Qt中一个类moveToThread后,线程结束后如何自动析构?
2019-06-20
qt引用gdal库出现问题
2017-10-30
TA创建的收藏夹 TA关注的收藏夹
TA关注的人