2023年总结我所经历的技术大变革
- 📢欢迎点赞 :👍 收藏 ⭐留言 📝 如有错误敬请指正,赐人玫瑰,手留余香!
- 📢本文作者:由webmote 原创
- 📢作者格言:新的征程,我们面对的不仅仅是技术还有人心,人心不可测,海水不可量,唯有技术,才是深沉黑夜中的一座闪烁的灯塔 !
序言
2023年开年就是旅游,春节开车一路狂奔,从西安到云南大理,再到西双版纳,算是对过去一年的巨大压力的一个宣泄。大理的美景仍如多年前一样靓丽可人,下关风吹到了大理古城,再次领略了苍山雪洱海月,还很意外的遇到了成群的海鸥。
2023年有很多的坏消息,很多朋友都经历了中年失业的社会毒打,而我总算庆幸自己有份安心的工作。
也经历了从杭州工作又再次回归西安工作的短暂心理转变,并在技术关注点上也逐步从互联网回归到了传统而又新颖的机器人制造行业。
2023年,一个充满变革与挑战的年份,对我个人而言,它不仅仅是日历上的一页翻过,更是技术演进的一大跃进,在这一年中,我不仅见证了技术的迅猛发展,也亲自融入了这场变革之中。
既然又到了年末,那就盘点下自己在2023年经历的几个新的技术变革吧。
1 WebRTC 视频直播
因为机器人行业需要直接处理视频推流和直播,因此就从中学习了很多推流方案,而能够支持在浏览器中播放的技术,以前大都采用FLV方式进行播放,虽然利用ffmpeg进行推流还是非常方便的,但这个格式唯一的缺点就是慢那么几秒时间。
而,时间就是金钱!我的朋友们!
传统的视频直播技术,如同老式电视,总有几秒的延迟。但在快节奏的现代社会,“几秒”也能决定成败。因此,我转向了WebRTC,一种可以让你和我在网络世界中“即时见面”的神奇技术。那么为了提升那几秒时间,采用WebRTC技术是比较好的解决方案之一。
为什么选择WebRTC? 与FLV等传统技术相比,WebRTC的优势不仅仅在于它的实时性。它更像是一辆装备了最新引擎的跑车,快速且高效。无需复杂的服务器支持,它能在浏览器中轻松实现点对点通信。想象一下,通过WebRTC,我们可以实现从机器人眼中看世界的愿望,这对于我所从事的机器人行业来说,简直是一场革命。
WebRTC (Web Real-Time Communications) 是一项实时通讯技术,它允许网络应用或者站点,在不借助中间媒介的情况下,建立浏览器之间点对点(Peer-to-Peer)的连接,实现视频流和(或)音频流或者其他任意数据的传输。WebRTC 使用了很复杂的信令,因此基于WebRTC可能需要开发信令服务,这足矣让很多人止步。
现有的推流软件有老牌的SRS,可部署在多个平台上,应用也非常广泛;而我并没有选择这个软件,二十采用了另外一款Go语言编写的 go2rtc 软件,其占用cpu和内存非常少,无需特殊安装,使用便捷方便。 如果你有兴趣,可以看我之前的文章。
2. 机器人导航原理
这块的确属于工作需要了,如果你不是从事这个行业,那么直接跳过或了解下即可。机器人导航,对于门外汉来说,的确充满着神奇色彩。
如果你有兴趣额,我就简单的概括说下吧,希望能说明白。
目前的导航分为激光导航和视觉导航两大分类,从我个人来看,非常看好视觉导航,不过市场上成熟的方案现在依然是激光导航。
- 激光导航:精确但高昂 激光导航的原理类似于蝙蝠的回声定位。它使用激光雷达扫描周围环境,通过反射回的激光信号来绘制出一张精确的地图。在这张地图上,机器人就能像游戏中的角色一样,找到避开障碍物的最佳路径。虽然激光导航准确度高,但其成本也相对较高。
- 视觉导航:前景广阔但尚待开发, 另一方面,视觉导觉导航则像是拥有“鹰眼”的机器人。它利用摄像头捕捉图像,通过复杂的算法处理这些图像,以此来理解和导航环境。虽然这种方法在理论上可行,但实际应用中的复杂性和不确定性使得它仍然是一个挑战重重的领域。
激光导航其主要的原理在于使用激光先对所在的场所进行扫描,通过激光雷达的扫描信息(点云)建立一个二维(三维)地图,这个地图很像我们在某个游戏中打怪的地图,有了这个地图后,你可以指点机器人要抵达的地点,通过路径算法Dijkstra或A* 或其他算法,找到避开障碍物的路径(非常像某游戏中点击目的地,怪物自动寻找的路径线路),然后利用驱动控制电机沿线路行走,在行走时,可能有其他的传感器参与期中,进行障碍物检测或者行走里程检测等。
听起来是不是容易多了?
以上是轮式机器人的原理,如果是人形机器人,控制会更复杂,但原理也是大抵如此。
3 ChatGpt 智能AI
在2023年,AI技术的一个重要突破是聊天机器人,尤其是像ChatGPT这样的模型。这不仅仅是一个能回答问题的机器,它更像是一个智慧的伴侣,能理解我们的语言,甚至与我们进行深层次的交流。
是的,如此火爆全球的技术,不容你不懂。
我们不期望超越ChatGpt这种人工智能的能力,但是学会应用它应该是当下每个打工人需要做的事情。
作为 一名永远忠诚你的私人助手,每月的20美金可还值得?
当然有很多公司已经为他们的职员买单了,那么你还有什么理由不去学习和使用它呢?
4. 新兴技术5G通信的探索
另一个值得关注的技术是5G通信。这不仅仅是速度的提升,更是物联网、智能家居、远程医疗等领域的可能性大门的开启。
在机器人项目中,5G通信技术使得数据传输更快、更稳定。这对于实时控制和监控机器人至关重要。随着5G网络的普及,我预见到更多创新应用的出现,例如远程控制的机器人进行危险环境的勘探和救援任务。
当然,5G组网也是期中最关键的一块,明年可能会接触更多类似的技术。
5 就业环境恶化
2023年的就业市场可谓是多事之秋。一方面,新兴技术的崛起带来了新的职业机会,另一方面,自动化和AI的发展也使一些传统职位面临挑战。在这种环境下,保持学习的态度和适应能力变得尤为重要。
从众多面试的经验看到,很多人失业后,就业机会渺茫,但俗话说否极泰来,绝处逢生。
很多人干脆抛去找工作的念头,利用这个时间就行个人创业、直播、学习,甚至寻找新的机会,这未尝不是一件好事。而身在职场中的人,大都在经历疯狂内卷的境遇,加班丧失了自己本就可怜的自由时间,完全没有了学习和副业的机会,可谓祸兮福之所倚也,福兮祸之所伏也。
总结
回顾2023年,尽管面临诸多挑战,但也是一个充满机遇的年份。
从WebRTC到AI,从机器人到5G,这些技术不仅改变了我的工作方式,也深刻影响了我们的生活。作为一个中年技术人员,我感到非常幸运能够亲身经历这些变革,但是同样也对未来的不确定性充满恐惧,但又有什么特别的办法呢?
谁也没想到2023年压力不减反升,而各种疾病也是接踵而至,身心和精神都受到双重折磨,看起来今年的春节又需要我们好好的调整下,保持健康的体魄,才能在未来不确定性中走的更从容吧!
你有没有在2023年遇到什么特别的技术呢,亦或是有着更多的应对手段,评论区等你的参与啊!
👓都看到这了,还在乎点个赞吗?
👓都点赞了,还在乎一个收藏吗?
👓都收藏了,还在乎一个评论吗?
相关文章:

2023年总结我所经历的技术大变革
📢欢迎点赞 :👍 收藏 ⭐留言 📝 如有错误敬请指正,赐人玫瑰,手留余香!📢本文作者:由webmote 原创📢作者格言:新的征程,我们面对的不仅…...

基于YOLOv7算法的高精度实时车载摄像头下车辆检测系统(PyTorch+Pyside6+YOLOv7)
摘要:基于YOLOv7算法的高精度实时车载摄像头下车辆检测系统可用于日常生活中检测与定位车辆,此系统可完成对输入图片、视频、文件夹以及摄像头方式的目标检测与识别,同时本系统还支持检测结果可视化与导出。本系统采用YOLOv7目标检测算法来训…...

深度学习(3)--递归神经网络(RNN)和词向量模型Word2Vec
目录 一.递归神经网络基础概念 二.自然语言处理-词向量模型Word2Vec 2.1.词向量模型 2.2.常用模型对比 2.3.负采样方案 2.4.词向量训练过程 一.递归神经网络基础概念 递归神经网络(Recursive Neural Network, RNN)可以解决有时间序列的问题,处理诸如树、图这样…...

【江科大】STM32:中断系统(理论)
文章目录 中断系统为什么要使用中断中断优先级中断嵌套STM32的中断系统如何管理这些中断NVIC的结构 优先级窗口看门狗(WWDG):外部中断模块的特性&#…...

JAVA 学习 面试(六)数据类型与方法
数据类型 基本数据类型 为什么float3.4报错 3.4 默认是浮点double类型的,如果赋值给float是向下转型,会出现精度缺失,,需要强制转换 Switch支持的数据类型? byte、short、int、char 、 enum 、 String 基本类型与包…...
Java 一个数组集合List<People> 赋值给另一个数组集合List<NewPeople> ,两个数组集合属性部分一致。
Java 一个数组集合List 赋值给另一个数组集合List ,两个数组集合属性部分一致。 下面是一个Demo, 具体要根据自己的业务调整。 import java.util.ArrayList; import java.util.List;class People {private String name;private int age;private String address;publ…...

基于神经网络的电力系统的负荷预测
一、背景介绍: 电力系统负荷预测是生产部门的重要工作之一,通过准确的负荷预测,可以经济合理地安排机组的启停、减少旋转备用容量、合理安排检修计划、降低发电成本和提高经济效益。负荷预测按预测的时间可以分为长期、中期和短期负荷预测。…...

OpenCV第 1 课 计算机视觉和 OpenCV 介绍
文章目录 第 1 课 计算机视觉和 OpenCV 介绍1.机器是如何“看”的2.机器视觉技术的常见应用3.图像识别介绍4. 图像识别技术的常见应用5.OpenCV 介绍6.图像在计算机中的存储形式 第 1 课 计算机视觉和 OpenCV 介绍 1.机器是如何“看”的 我们人类可以通过眼睛看到五颜六色的世界…...
C++面试:stl的栈和队列介绍
目录 栈 栈(stack)的声明: push(): 将元素推入栈顶 pop(): 弹出栈顶元素 top(): 访问栈顶元素,但不弹出 empty(): 检查栈是否为空 size(): 返回栈中元素的数量 …...
从0开始学习C++ 第十二课:指针强化
第十二课:指针强化 学习目标: 理解常量指针与指针常量的区别。学习如何使用函数指针。掌握指针与数组的高级使用技巧。 学习内容: 常量指针与指针常量 概念: 常量指针是一个指向常量的指针,这意味着不能通过这个指针…...
mongodb和python交互
1. mongdb和python交互的模块 pymongo 提供了mongdb和python交互的所有方法 安装方式: pip install pymongo 2. 使用pymongo 2.1 导入pymongo并选择要操作的集合 数据库和集合能够自动创建 2.1.1 无需权限认证的方式创建连接对象以及集合操作对象 from pymongo import Mong…...

力扣279. 完全平方数
动态规划 思路: 假设 dp[i] 为最少组成数 i 的平方数个数;则其上一个状态为 dp[i - j^2] 1,1 为 j^2: 即 i 的最少完全平方数 i - j^2 的最少完全平方数 1,其中 j^2 < i 为最接近 i 的平方数;初始值…...

【C++】list容器功能模拟实现
介绍 上一次介绍了list队容器的迭代器模拟,这次模拟实现list的简单功能,尤其要注意构造函数、析构函数、以及赋值运算符重载的实现。 list容器需要接纳所有类型的数据,因此,结构设置与迭代器设置同理,需要引入结点&…...

linux 安装ffmpeg
一、下载 ffmpeg-4.3.1 下载地址:链接:https://pan.baidu.com/s/1xbkpHDfIWSCbHFGJJHSQcA 提取码:3eil 二、上传到服务器root目录下 三、给ffmpeg-4.3.1 读写权限 chmod -R 777 /root/ffmpeg-4.3.1 四、创建软连接 1.进入/bin 目录 2.…...

激光雷达行业梳理2-产业链、公司、未来展望
四、产业链及竞争格局 激光雷达产业链可以分为上游(光学和电子元器件)、中游(集成激光雷达)、下游(不同应用场景)。其中 上游即激光发射、激光接收、扫描系统和信息处理四大部分,主要包括激光器…...

Java 设计者模式以及与Spring关系(四) 代理模式
目录 简介: 23设计者模式以及重点模式 代理模式(Proxy Pattern) 静态代理示例 spring中应用 动态代理 1.基于JDK的动态代理 target.getClass().getInterfaces()作用 内名内部类写法(更简洁,但不推荐) 2.基于CGLIB实现 spring中应用 …...

PHP编程实践:实际商品价格数据采集
引言 在电子商务领域,对商品价格进行数据采集和对比是一项常见的需求。本文将介绍如何使用PHP编程语言实现对1688和淘宝商品价格数据的采集和对比,帮助读者了解实际的编程实践过程。 一、数据采集原理 数据采集是指从互联网上获取数据的过程ÿ…...

有效防范网络风险的关键措施
在数字化时代,企业面临着日益复杂和频繁的网络风险。提高员工的网络安全意识是防范网络威胁的关键一步。本文将探讨企业在提升网络安全意识方面可以采取的措施,以有效预防潜在的网络风险。 1. 开展网络安全培训:企业应定期组织网络安全培训&…...
Spring Boot整合webservice
Spring Boot整合webservice 前言1.整合依赖2.建立暴露接口2.实现类 3.发布服务4.查看打完收工! 前言 工作中遇到的问题,由于下游系统属于第三方系统,使用的是soap webservice,同时也在开发,虽然也发布了一套webservic…...

Qt拖拽事件简单实现
1.相关说明 重写resizeEvent(这个按需重写)、dragEnterEvent(拖拽事件函数)、dropEvent(放下事件函数),可以将本地图片拖拽到label标签中 2.相关界面 3.相关代码 #include "widget.h" #include "ui_widget.h" #include <QDragEnterEvent>…...
浏览器访问 AWS ECS 上部署的 Docker 容器(监听 80 端口)
✅ 一、ECS 服务配置 Dockerfile 确保监听 80 端口 EXPOSE 80 CMD ["nginx", "-g", "daemon off;"]或 EXPOSE 80 CMD ["python3", "-m", "http.server", "80"]任务定义(Task Definition&…...
mongodb源码分析session执行handleRequest命令find过程
mongo/transport/service_state_machine.cpp已经分析startSession创建ASIOSession过程,并且验证connection是否超过限制ASIOSession和connection是循环接受客户端命令,把数据流转换成Message,状态转变流程是:State::Created 》 St…...

【JVM】- 内存结构
引言 JVM:Java Virtual Machine 定义:Java虚拟机,Java二进制字节码的运行环境好处: 一次编写,到处运行自动内存管理,垃圾回收的功能数组下标越界检查(会抛异常,不会覆盖到其他代码…...

汽车生产虚拟实训中的技能提升与生产优化
在制造业蓬勃发展的大背景下,虚拟教学实训宛如一颗璀璨的新星,正发挥着不可或缺且日益凸显的关键作用,源源不断地为企业的稳健前行与创新发展注入磅礴强大的动力。就以汽车制造企业这一极具代表性的行业主体为例,汽车生产线上各类…...

最新SpringBoot+SpringCloud+Nacos微服务框架分享
文章目录 前言一、服务规划二、架构核心1.cloud的pom2.gateway的异常handler3.gateway的filter4、admin的pom5、admin的登录核心 三、code-helper分享总结 前言 最近有个活蛮赶的,根据Excel列的需求预估的工时直接打骨折,不要问我为什么,主要…...
linux 下常用变更-8
1、删除普通用户 查询用户初始UID和GIDls -l /home/ ###家目录中查看UID cat /etc/group ###此文件查看GID删除用户1.编辑文件 /etc/passwd 找到对应的行,YW343:x:0:0::/home/YW343:/bin/bash 2.将标红的位置修改为用户对应初始UID和GID: YW3…...

处理vxe-table 表尾数据是单独一个接口,表格tableData数据更新后,需要点击两下,表尾才是正确的
修改bug思路: 分别把 tabledata 和 表尾相关数据 console.log() 发现 更新数据先后顺序不对 settimeout延迟查询表格接口 ——测试可行 升级↑:async await 等接口返回后再开始下一个接口查询 ________________________________________________________…...

淘宝扭蛋机小程序系统开发:打造互动性强的购物平台
淘宝扭蛋机小程序系统的开发,旨在打造一个互动性强的购物平台,让用户在购物的同时,能够享受到更多的乐趣和惊喜。 淘宝扭蛋机小程序系统拥有丰富的互动功能。用户可以通过虚拟摇杆操作扭蛋机,实现旋转、抽拉等动作,增…...

ubuntu系统文件误删(/lib/x86_64-linux-gnu/libc.so.6)修复方案 [成功解决]
报错信息:libc.so.6: cannot open shared object file: No such file or directory: #ls, ln, sudo...命令都不能用 error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory重启后报错信息&…...

自然语言处理——文本分类
文本分类 传统机器学习方法文本表示向量空间模型 特征选择文档频率互信息信息增益(IG) 分类器设计贝叶斯理论:线性判别函数 文本分类性能评估P-R曲线ROC曲线 将文本文档或句子分类为预定义的类或类别, 有单标签多类别文本分类和多…...