在https://editor.p5js.org/ 展示
代码如下:
展示效果如下:
作为一名老司机,可靠且安全的远程桌面软件对我的生产力至关重要。这两年来,我一直依赖ToDesk,这是一款由海南有趣科技有限公司开发的流行远程桌面解决方案。
然而,在2025年,我决定全面转向RustDesk,一款开源的远程桌面软件。这一决定源于对透明性、定制化、数据主权和社区支持的追求。
ToDesk与RustDesk是什么ToDeskToDesk是一款由海南有趣科技有限公司开发的远程桌面软件,支持Windows、macOS、Linux和Android等多个平台。它以低延迟、4K高清支持和23种安全措施(如连接日志、操作记录和云加密)而闻名。
ToDesk还提供云服务,包括云电竞、云设计和云AIGC,适用于游戏、设计和计算密集型任务。此外,它支持自托管和企业级功能,如与AD、飞书和微信的集成。然而,作为专有软件,其代码不公开,限制了用户的透明度和控制能力。
RustDeskRustDesk是一款开源远程桌面软件,旨在替代TeamViewer和AnyDesk等专有解决方案。它使用Rust语言开发,注重性能、安全性和隐私,支持Windows、macOS、Linux和Android等平台。
...
在https://editor.p5js.org/ 展示
代码如下:
let img; // 用于存储图像对象
let originalImgWidth, originalImgHeight; // 存储图像原始尺寸
let displayWidth = 800; // 画布最大显示宽度
let displayHeight = 600; // 画布最大显示高度
let scaledWidth, scaledHeight; // 图像在画布上的缩放后尺寸
let scaleFactor; // 缩放比例
let tileSize = 64; // 图块尺寸改小一点,动画效果更明显
// --- 图像URL (保持不变或替换) ---
let imageUrl = 'https://cdn.jsdelivr.net/gh/ytkz11/picture/imgs202505291132028.png';
// --- 动画状态变量 ---
let currentCol = 0;
let currentRow = 0;
let totalCols;
let totalRows;
let ...
使用Python和GDAL去除遥感影像黑边遥感影像常因传感器限制或预处理过程而在边缘区域出现黑色或无效像素。这些黑边通常表现为多个波段的负值或零值,会干扰后续的分析、建模或可视化工作。本文将介绍一个基于 Python 和 GDAL 库的脚本,用于处理遥感影像的边缘区域,将满足条件的负值像素置为零,仅针对指定宽度的边界区域进行操作,从而保留影像主体数据的完整性。
问题背景遥感影像(如卫星影像)在边缘区域常出现无效像素,这些像素在多个波段中可能表现为负值或零值。黑边不仅影响影像的美观,还可能导致统计分析偏差或机器学习模型性能下降。我们的目标是识别边界区域内至少有指定波段数量(如2个波段)为负值的像素,并将其在所有波段的值置为零,同时仅处理边缘区域,避免影响影像内部的有效数据。下图是一个含有边缘黑边的遥感影像。
解决方案本脚本使用 GDAL 处理地理空间数据,并结合 NumPy 进行高效的数组操作。它采用分块处理方式以应对大尺寸影像,仅针对边界区域(例如100像素宽)进行处理,并根据负值波段数量应用置零规则。主要功能包括:
分块处理:通过分块读取和处理影像,高效处理大尺寸数据。
边缘区域 ...
class PAM_Module(nn.Module):
"""Position Attention Module"""
def __init__(self, in_dim):
super(PAM_Module, self).__init__()
self.chanel_in = in_dim
self.query_conv = nn.Conv2d(in_channels=in_dim, out_channels=in_dim//8, kernel_size=1)
self.key_conv = nn.Conv2d(in_channels=in_dim, out_channels=in_dim//8, kernel_size=1)
self.value_conv = nn.Conv2d(in_channels=in_dim, out_channels=in_dim, kernel_size=1)
self.gamma = nn.Parameter(torch.zeros(1) ...
我最近读到了一篇技术从业者的内心独白,字里行间充满了迷茫、失望与自嘲。这篇文章让我感同身受,仿佛看到了自己深夜敲键盘时的影子。他提到的技术写作困境、行业停滞感,以及对社会现实的无奈,正是许多giser的心声。
AI时代的自我怀疑这些年,AI大模型彻底改变了我的工作方式。以前,写代码遇到不熟悉的API,我会花半天泡在搜索引擎里找答案;现在,直接问Grok或ChatGPT,代码示例分分钟到手。效率是高了,可我却开始怀疑:我那些费尽心思写的教程,还有存在的意义吗?就像方便面败给了外卖,技术流公众号的对手,竟成了AI。这念头让我苦笑,也有点凉意。
作为博主,我曾为分享一个遥感工具的使用技巧而兴奋,觉得能帮到同行就值了。可现在,AI的秒答让我觉得自己像个过时的解说员。更别提,一篇技术文章往往要花数小时查资料、捋逻辑,最后可能只有几个人点赞。这种投入与回报的落差,真的让人想“摆烂”。
但冷静下来,我想,技术写作的意义从不只是“教人用工具”。AI能给答案,却给不了我在GIS项目中踩过的坑、熬夜调试时的心路历程,或是对行业趋势的批判性思考。我也曾因思路不顺、怕文章没人看而放弃发布,但后来发现,写作不仅 ...
地理信息系统(GIS)这行,听起来高大上,实际上也确实有点“高处不胜寒”。作为一个从测绘专业毕业、如今写遥感开发代码的程序员,我算是踩过不少坑,也摸索出点门道。今天就跟大家聊聊GIS的“前景”和“钱景”,还有我自己是怎么在这行里找定位的,希望能给迷茫的兄弟姐妹们一点启发。
前景:技术很牛,机会不少GIS的前景,真的挺让人心动的。我大学学测绘的时候,天天跟地图、坐标打交道,后来转行写代码,发现GIS简直是技术爆炸的宝藏地。计算机视觉(CV)、遥感反演、分类识别,这些技术加持下,GIS能干的事越来越多。比如,我最近在搞一个遥感项目,用卫星影像监测山火,精度高到能看清哪片林子烧得最狠;还有城市交通优化,拿空间分析一算,堵车点立马暴露。这样的活儿,既有技术含量,又能实实在在解决问题,感觉自己是在“造福千万家”。
更别提现在GIS人才有多稀缺了。前景是真香,谁能啃下技术硬骨头,谁就能吃到肉。
钱景:门槛太高,钱不好赚但说到“钱景”,我得泼点冷水。GIS这行看着高大上,赚钱却没那么容易。高端市场基本被大佬垄断,像航天科工、华为这种,资金技术都硬得不行,小玩家根本挤不进去。我之前试着接过私活, ...
下载方式要在GitHub上下载别人的项目及其历史版本,可以通过以下步骤实现:
直接下载ZIP文件
进入项目仓库页面,点击右上角的绿色“Code”按钮,选择“Download ZIP”即可下载当前最新版本的压缩包。
优点:无需安装Git工具,适合快速获取代码快照。
2.使用Git克隆项目
复制仓库的HTTPS或SSH链接(点击“Code”按钮后可见)。
在本地命令行中执行:
git clone <仓库URL>
仓库URL是复制下图红色框的内容。
比如我要下载rs-tool的,那么我就需要在命令行输入:
git clone git@github.com:ytkz11/rs-tool.git
优缺点第一种方法,下载到本地的是一个压缩包,除了有些傻瓜之外,压缩包的名字末尾会加上master的字眼。
比如,下载rs-tool压缩包到本地,文件名字如下图所示。
题外话,在何同学的视频《我用 36 万行备忘录做了个动画》中,他使用了一个别人的项目,而他下载项目的方式正是我们提到的第一种方式——直接下载压缩包。下图是视频中对应的画面,清晰地展示了他文件夹项目的名字。
...
SSH工具,我之前用的是xshell。今天问了朋友,有没有更好的Ssh工具,她给我推荐了XTerminal。
引言点云技术正在重塑我们对现实世界的数字化理解,从自动驾驶的感知系统到数字孪生的虚拟建模,这项技术无处不在。对于初学者来说,理解点云文件的本质、格式以及处理逻辑,是迈向三维视觉领域的第一步。本文以一个简单的XYZ文件为例,深入解析点云的特性,并为“小白”提供循序渐进的学习建议,助你轻松入门。
点云的定义与本质点云是一种三维数据形式,由大量空间坐标点组成。每个点通常包含x、y、z坐标,有时还会附带额外属性,比如颜色、反射强度或法向量。
例如,一行点云数据可能是“2.75421051 -4.75981225 -6.44403559 8 12 13”,其中前三列表示空间位置,后三列是RGB颜色值(范围0-255)。与传统的3D模型(通过三角面片描述表面)不同,点云没有网格结构,完全依靠离散的点来表达物体的形态。
点云数据通常来源于3D扫描设备(如激光雷达)或摄影测量软件,应用范围涵盖3D CAD建模、地理信息系统(GIS)和质量检测等领域。尽管点云看似是一堆杂乱无章的点,但其中蕴含着“隐藏的秩序”:
空间参考系:所有点的坐标都基于某个坐标系,比如设备局部坐标系(以设备为原点0, 0 ...