自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

河马的BLOG

刻苦钻研技术 好好享受生活

  • 博客(180)
  • 资源 (14)
  • 收藏
  • 关注

原创 ubuntu20.04编译carla0.9.13源码

由于要研究一下carla的源码,准备先编译一下carla源码,选用的os是ubuntu20.04,carla的版本是0.9.13.编译的环境和步骤按照carla的官方文档来就可以了,但是还是有几个坑,所以特别记下来,供大家参考。编译unreal Engine按照官方文档的步骤就可以了,不会出现什么问题,只是需要科学上网按照文档来说,如果要在ubuntu20.04上编译,需要安装clang-10.但是下载的carla的源码中的安装脚本,确都是按照clang-8来进行编译的,所以需要修改安装脚本中clang的版

2022-12-06 19:36:30 767 1

原创 scenarioRunner使用

这些结果可以在 CARLA Leaderborad中进行验证和共享,这是一个开放平台,社区可以公平地比较他们的进展,评估现实交通情况下的代理。运行以后是看不到画面的,需要运行carla提供的manual_control.py文件才可以看到。同时也把PythonAPI目录下的carla文件夹下的agents目录拷贝到~/scenario_runner/目录下。agents目录下存放的是carla提供的自动驾驶的算法模块,openscenario运行需要这个模块。就可以看到运行的界面了。

2022-09-24 09:58:37 2600

原创 pygame1.9.6安装过程

由于某种原因,需要安装pygame1.9.6版本。默认使用清华源安装的版本是2.1.2.赶快上网找了原因,原来我的python的版本是3.9,需要更新安装很多东西。安装完就成这些依赖以后,就可以安装pygame1.9.6版本了。于是想当然的就很熟练的使用。...

2022-07-15 14:24:56 1182

原创 ubuntu18.04安装python3.6以及更新为清华源

1.安装python3.62.设置python3.6命令为python在用上面的命令安装完毕python以后,如果在terminal输入python是不会显示的,需要输入python3.6.python3.6的安装路径为/usr/bin,进入/usr/bin目录为python3.6创建一个软链接,这样就可以直接使用python命令了。2.更新为清华源...

2022-06-19 11:10:44 2043

原创 carla 把车辆遇到的红灯都变成绿灯

在仿真场景中有时候希望把遇到的红灯都变成绿灯,这样车就可以畅通无阻的形式。代码如下首先判断vehicle是否在交通信号灯的影响范围之内,其实就是看车辆是否进入了交通信号灯的bound box。如果进入了,而且信号灯是红色的,那么车就停止了如果是在影响范围内,就通过函数get_traffic_light()获得对应的交通灯对象判断当前交通灯的状态,如果是红色,就把交通灯的状态变为绿色的。这样车就不会停止,一直再跑。

2022-06-02 16:22:13 1403 5

原创 ros_bridge ackermann控制

在ros_bridge中,除了使用manual_control包来直接使用键盘来控制仿真小车,还可以通过ackermann(阿克曼)来控制。在carla和autoware联合仿真的过程中,autoware最终的控制信息是要转换为ackermann控制指令,最后控制仿真车。消息的整个流程如下图所示这个节点用来生成ackermann节点。这个节点是使用PID来控制速度和加速度这个用来设置ackermann的各种参数,并且定义了一个参数服务器这个是节点订阅的各种消息。如图所示,其中/carla/ego_

2022-06-01 11:27:55 910

原创 修改编译 ros_bridge docker中的源码

有时候需要修改一下ros_bridge docker中的源码这个docker镜像中的源码分为两部分,一部分是autoware的源码,一部分是carla_ros_bridge的,carla_ros_bridge的源码都是以ros node的形式编写的,存放在carla-autoware-agent 和 ros-bridge两个目录中,编译是在carla_ws目录中。整个ros_bridge docker镜像的目录结构如下Autoware的源码PythonAPI是carla的api库的egg存放

2022-05-25 11:06:23 338

原创 carla中在斑马线附近的指定位置生成车辆

在carla中,车辆位置的生成一般都是在可以生成车辆的点的地方随机分配一个,这就导致生成的车辆的位置不固定。目前有个需求,就是要在固定位置生成车辆,而且还是斑马线附近,解决办法如下(使用的场景是Town03)。1. 首先找到carla场景中可以生成的点的做坐标。 在carla中使用spaw_points=world.get_map().get_spawn_points()get_spawn_points()函数为carla.Map模块中的函数,用来获得地图中所有车辆生成点。返回值是一个包含c

2022-04-20 20:02:45 1529 1

原创 ubuntu18.04 安装opencv4.5.5

在编译ros的node的时候,碰到了一个错误,/home/project/src/tasks.cpp:361: undefined reference to `cv::imread(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int)'上网查了一下,说注意上面的那个__cxx11。旧版本编译器编译出来的代码中,不会有这个符号,在

2022-04-10 21:02:36 6075 1

原创 Ros发布图像消息

ros的图像消息的格式为sensor_msgs::ImagePtr一般发送图像消息都是通过opencv来进行转换,ros提供了一个类cv_bridge来负责ros图像消息和opencv图像消息的转换在OpenCV中,图像是以Mat矩阵的形式存储的,这与ROS定义的图像消息的格式有一定的区别,所以需要利用cv_bridge将这两种不相同的格式联系起来,如下图所示。转换后的图像消息格式为sensor_msgs::ImagePtropencv和cv_bridge转换的核心代码cv::Mat i

2022-03-28 10:05:06 8322

原创 Ros发布点云文件

ros如果要发布点云文件,需要把点云文件转换为ros的点云消息格式sensor_msgs::PointCloud2这个需要点云库文件#include <pcl/point_types.h>#include <pcl_conversions//pcl_conversions.h>#include <sensor_msgs/PointCloud2.h>#include <pcl/io/pcd_io.h>核心的代码是ros::NodeHandle

2022-03-28 09:25:44 1252

翻译 使用 k-means 聚类生成 SSD 锚框纵横比

许多对象检测模型使用锚框作为区域采样策略,因此在训练期间,模型学习将几个预定义的锚框之一与地面实况边界框匹配。为了优化对象检测模型的准确性和效率,调整这些锚框以适合您的模型数据集会很有帮助,因为 TensorFlow 的经过训练的检查点附带的配置文件包括旨在覆盖非常广泛的对象集的纵横比.

2022-02-15 14:28:23 3619 1

原创 使用Tensorflow Object Detection API训练自己的数据,并使用编译成功的模型进行识别

Tensorflow提供了一个Tensorflow Object Detection API可以很方便的使用这个API进行目标识别和检测,效果还不错。但是目前网上很多资料都是基于TF1的版本,很少基于tf2的版本,而且官方文档也有很多错误。正好这一阶段有个相关方面的任务,就研究了一下,并编译了一个自己的模型,可以对目标进行检查。特此记录下来,供自己和大家参考编译环境大家最好使用docker,docker的版本也是要求的。由于TF2.0的object_dection的API对一些依赖库是有要求的,这个文件在

2022-01-12 18:12:13 1229 2

原创 ROS 编写自定义消息(Python版)

ROS 自定义消息类型

2021-12-23 13:25:08 5203

原创 jupyter添加新的语言包

jupyter本身是支持多语言的,但是支持的语言是有限的,官方目前只支持:简体中文,法语,日语,英语。如果想要添加一个新的语言支持,就要自己动手来添加。下面就以添加繁体中文jupyter的语音包通常放在/dist-packages/notebook/i18n...

2021-11-15 14:07:30 4591

翻译 Carla的核心内容

Carla的核心内容- 世界和客户端(World and client)客户端是用户和模拟器交流信息的模块。一个客户端运行在一个特定的IP和端口。客户端通过终端和服务器进行通信。同一时刻可以运行多个客户端。高级的多客户端管理要求对CARLA和同步性有透彻的了解。世界是代表模拟器的对象。它充当抽象层,其中包含生成角色,更改天气,获取世界的当前状态等主要方法。每个模拟器中只有一个世界。当更改地图后,它将被销毁并替换为新的对象。- 演员和蓝图(actor and blueprints)演员是在模拟器中起

2021-01-25 17:10:51 346

原创 编写ros launch 发布kitti的照片

在B站上有个ros使用自动驾驶数据集kitti教程,其中有一节是自己动手写一个node来发布照片。但是在发布的过程比较繁琐,要启动roscore,rivz等等,为了方便,我就把这个写成了一个launch,可以一步启动,我把这个launch命名为kitti_cam.launch。这个功能包包括三个部分。yaml文件,用来定义node所需的参数,包括图片的路径,图片的数量,播放的速率。rviz文件。作为在launch文件中,启动rviz的参数源代码如何创建功能包这里就不在描述了YAML文件p

2020-12-18 13:31:02 246

原创 linux 自启动服务的流程

在上一篇博客中《使用 Java Service Wrapper 将Java程序在树莓派上部署成系统服务 过程中碰到的坑。。。》 提到最后要把wrapper做成个服务,用的方法是sudo ln -s /opt/xxxx /etc/init.d sudo chkconfig --add xxx但是目前Linux系统中都是用systemd来管理服务的,难道是由两套系统?后来仔细研究了以下,其实...

2019-08-20 13:27:12 522

原创 树莓派系统找不到蓝牙 Can‘t init device hci0: Operation not possible due to RF-kill (132)。

今天安装了一个树莓派的系统,结果蓝牙找不到了,使用hciconfig -a查看蓝牙的信息,蓝牙的地址全为0.使用命令 sudo hciconfig hci0 up 结果提示 Can’t init device hci0: Operation not possible due to RF-kill (132)。查看启动信息,发现也是提示这个问题,查看这个提示,说是由于RF-kill,这个是个什...

2019-07-10 17:57:05 6245

原创 使用 Java Service Wrapper 将Java程序在树莓派上部署成系统服务 过程中碰到的坑。。。

最近有个需求,需要将Java的程序在树莓派上部署成服务,就准备使用Java service Wrapper。上网参考了一下别的文章,但是其中也碰到了不少的坑,特记录下来,希望能帮助到别的童鞋。。。主要的过程可以参考这篇文档,我主要是记录一下这篇文章没有提到的问题Java Service Wrapper 将Java程序部署成系统服务Java Service Wrapper 版本的问题Ja...

2019-03-26 14:19:10 344

原创 C/C++数组的下标可以为负

今天偶然碰到C/C++的数组下标可以为负值,感到十分奇怪。平时写代码,下标都是从零开始,从来没考虑到这个问题。写了一下测试代码,居然通过了。但是值却是乱的。但是如果你写下标的值在数组的范围内,是可以输出一个正确的值的。int a[5] = {1,2,3,4,5}; int *ptr1 = (int*)(&amp;a+1); printf("%x,%x,",ptr1[-1]);这个结...

2019-02-13 15:01:24 5287 2

原创 Windows下安装GCC G++ 并使用CMake生成Makefile文件,并使用GDB进行调试

想在Windows下使用GCC G++编译C程序,并想使用CMake来生成Makefile文件,在这个过程中碰到了一些问题,特记录下来。安装CMake这个很简单,去CMake的官网下载一个CMake的Windows安装包,点击安装即可。在安装结束的时候,最好选择 设置环境变量CMake官网 https://cmake.org/安装GCC G++首先需要去安装mingW,参考这...

2019-02-11 15:03:41 7768

原创 在树莓派 Ubuntu-mate上使用USB麦克风进行录音和播放

由于要在树莓派的Linux上开发录音和播放功能的软件,特地对Linux的录音和播放功能进行了研究,学习如何设置USB的麦克风的使用1. 安装pluseAudiosudo apt-get install pluseaudio2. 调节麦克风在终端输入alsamixer 命令,就会出来一个调节麦克风的录音的图形界面选择F6可以选择使用那个设备进行录音。我是用的一个飞利浦USB麦克风。...

2019-01-25 15:18:14 4016 2

原创 objective-c类对象的理解

刚开始学习 oc 的时候,对 oc 很感兴趣的就是那套 runtime 机制。觉得能把c 变成一套面向对象的机制,还是蛮厉害的。后来又学习了一下 runtime,其中对 oc 的类对象一直搞不清楚,尤其搞不清楚就是类也是一个对象这种说法。因为以前学习 c++的时候,学的就是类用来定义一个对象的,类是虚的,类只是一个定义。而在 oc 中类也是一个对象。而且 oc 中,由于 runtime 机制把 ...

2018-11-23 18:11:37 178

原创 使用 AudioUnit进行录音

上一篇讲了如果使用 AudioUnit进行播放音频文件,这一篇讲一下如何使用AudioUnit进行录音 这个两个过程其实很类似。只是在回调方法上的使用不同。 1)初始化 AudioUnit的初始化比较啰嗦,而且方法比较多。这里采用一种比较简单的。AudioComponentDescription outputUinitDesc; //定义AudioUnit描述,下面是设置 ...

2018-07-17 15:36:18 2600 1

原创 AudioUnit的播放音频文件

这一段研究了一下如果用 AudioUnit 播放音频文件。其中播放mp3和播放pcm是不一样的。下面分别介绍一下,当做总结1. 播放 PCM文件 1)初始化 AudioUnit的初始化比较啰嗦,而且方法比较多。这里采用一种比较简单的。 AudioComponentDescription outputUinitDesc; //定义AudioUnit描述,下面是设置 unit 的...

2018-07-16 13:27:18 2103

原创 ios Pod文件的产生和编辑

pod的安装 请参考 http://www.code4app.com/article/cocoapods-install-usage,这篇文档比较老了,请把其中的taobao ruby的地址换为 https://ruby.taobao.org/ pod文件的产生和编辑 首先使用pod init 产生Podfile文件 然后键入vi Podfile 进行添加所需的第三方库 添加完成后,...

2018-06-13 09:49:06 845

原创 在 Mac中使用visual studio code 调试 C,C++代码

在 Mac上有时候需要编写一些 C 或者 C++的代码,如果使用 xcode,有时候就显得很笨重,而且运行起来很不方便。而微软提供了一个跨平台的编辑器 Visual studio code ,这个编辑器很轻量级,而且插件超多,你几乎可以在这个编辑器里运行所有的软件。关于这个软件的介绍网上很多,在这里我就不介绍了。 但是在 Mac上使用这个软件调试C ,C++的时候遇到了一些小问题。因为 Mac ...

2018-04-10 11:30:47 43311 7

原创 WKWebView 和 JS 的交互

前言WKWebView是苹果在 iOS8.0以后推出的新的 webView库。目前现在很多 APP 都混合了 webView,这个库将来的用处会越来越大。这一段正好有个小项目用到了WKWebView ,学习了一下,在这里写篇文章总结一下。WebKit FrameworkiOS 中和 webView 相关和交互的文件都放到了 WebKit 这个库中#import <WebKit/WKBackForwa

2017-12-29 10:56:10 608

原创 汇率换算自然语言理解功能IOS DEMO

前言目前使用语音输入越来越普遍。语音输入不仅高效,而且更加自然,符合人类的输入方式。在这里开发了一个汇率换算的 APP,展示了如何使用这个语音识别平台。APP简介这个 APP可以识别用户的输入,然后返回结果,并使用自然语言读出来。 用户可以点击话筒图标,进行语音输入:“1元人民币兑换多少美元”。或者说“350泰铢兑换多少人民币”等等。结果也会通过语音读出来功能实现语音识别和语义理解都是通过Ola

2017-11-07 15:34:22 1367

转载 实例分享--语音和自然语言控制智能家居

ZigBee作为一种短距离、低功耗的无线通信局域网协议,其优点是超低功耗、安全性高和自组网,并且可容纳多个设备,因此在智能家居控制中占有很大的优势。   但是,仅仅使用ZigBee技术来控制家居设备显得比较单薄,或者不够“智能”。 比如,用户说:我回家了。 你可以帮他打开灯、打开空调。 用户说:来点浪漫的气氛 你可以给他打开音箱,情景灯调整柔和的状态。   要实现这些功能

2017-10-31 14:17:24 782

转载 自动客服功能的微信小程序

(欢迎转载。本文源地址:http://blog.csdn.net/speeds3/article/details/77326122)微信小程序最近比较火爆,所以抽空做了个客服机器人的小程序,来回答之前坦克游戏中的常见问题。当然这个小程序也很容易修改为其他类型的自动客服,需要做的仅仅是在olami平台加上相应的问题和答案。微信扫一扫体验小程序整个小程序界面包含2个部分,一部分用于显示回答,一部分为输入

2017-10-30 16:24:21 3727

转载 一种在智能对话中实现上下文功能的方法

智能对话中有一个经典的场景:Q:上海的天气A:上海的天气是……Q:那北京的呢A:北京的天气是……第二个问句是一个特殊的问句,它的语义和前一句关联,但单独说它没有明确的意图。目前的olami开放平台提供的IDS模块(应用管理->配置模块->对话系统模块)自身可支持上下文,但对平台用户自己开发的NLI模块却没有提供直接的支持。不过我们可以通过一些办法实现这种功能。下面就介绍一下解决方案。分析这种上

2017-10-30 16:23:53 1951

转载 使用OLAMI SDK和讯飞语音合成制作一个语音回复的短信小助手

现代人的生活越来越离不开手机,但我们总会遇到一些时候不方便用手去操作,比如开车,玩游戏的时候。智能语音时代这种情况有了新的解决方案。本文介绍了一个使用OLAMI Android SDK进行语音识别和理解,讯飞在线语音合成sdk进行语音合成实现在收到短信时直接进行语音回复的demo开发过程。在此基础上我们也可以很方便的增加其他的功能,比如查新闻,百科等,完成一个DIY的语音助手。简介OLAMIOLAM

2017-10-30 16:22:32 892

转载 利用OLAMI在unity游戏中加入中文语音控制(一)

(欢迎转载。本文源地址:http://blog.csdn.net/speeds3/article/details/76209152) 最近打算尝试一下OLAMI在游戏中应用的可能性,这里做一下记录。unity官方教程中的几个项目很精简,但看起来很不错,里面有全套的资源。最后我选择了tanks-tutorial来做这个实验。下载和修改项目首先按照教程下好项目,把坦克移动和射击的代码加上。这时就已经可以

2017-10-30 16:21:23 426

原创 语音识别完成诗句的查询功能,iOS AVSpeechSynthesis语音输出结果的诗歌APP

前言 当前的APP的查询都是使用手动输入,不仅效率低,而且查询的语句的限制比较大,不能够方便的扩展。如果能方便的扩展查询语句,那么APP的使用就会有很大的灵活性。可以设计各种问句和语句,可以方便的和用户进行交互。在这里使用了olami平台提供的语音平台接口,很方便的实现了查询语句的扩展,而且可以返回需要的结果。同时,Olami平台也提供了完整的语音识别功能,再结合iOS 提供的AVSpeechSy

2017-10-17 15:53:23 2899

原创 AFNetworking3.0 POST 以二进制的形式传输数据

目前在一个项目中碰到的需求是直接传输二进制数据,并不是NSArry或者NSDictionay类型的数据。发现使用AFNetworking的POST方式传输是不行的,服务器端收到的数据都是乱码。而以iOS NSURLSessionDataTask方式传输,却是正确的,这就有点疑惑了。AFNetworking是在NSURLSessionDtatTask的基础上开发的,既然NSURLSessionData

2017-09-21 11:18:52 1834

原创 iOS监听耳机插拔的不使用系统通知实现的一种方式

前言目前在iOS中监听耳机插拔通常使用的方式是利用iOS系统提供的耳机通知事件 AVAudioSessionRouteChangeNotification 来实现。

2017-08-25 09:46:11 1644

原创 音乐锁屏、后台播放的实现

前言实现自己播放音乐后,可以进行锁屏操作和后台播放,主要是利用AVAudioSession类。这个类是个单例类,用来设置APP的关于Audio的一些上下文,把自己APP的一些行为传递给系统

2017-08-21 10:30:52 1294

原创 Block 在不同情况下的变量存储区域

一.如果只使用全局或静态变量或不使用外部变量, 那么Block块的代码会存储在全局区; 二.如果使用了外部变量, 在ARC中, Block块的代码会存储在堆区; 在MRC中, Block快的代码会存储在栈区; 三.block默认情况下不能修改外部变量, 只能读取外部变量:

2017-08-15 17:23:03 369

object_camera_windows.py

目标检测实践Tensorflow2版SSD安装运行,并使用编译模型进行识别

2022-01-12

Jupyter-Notebook-Translator.zip

jupyter多语言翻译

2021-11-15

CoolEdit Pro 2.0 英文版.7z

音频编辑工具

2020-11-16

使用Olami SDK 语音控制一个支持HomeKit的智能家居的iOS程序

使用Olami SDK 语音控制一个支持HomeKit的智能家居的iOS程序

2017-05-17

使用Olami SDK实现一个语音输入数字进行24点计算的iOS程序

这是一个利用 Olami SDK 编写的一个24点iOS程序,是通过语音进行输入,方便快捷

2017-05-12

Thinking_in_c++(C++编程思想第一卷)

c++编程思想,很经典的书籍,值得多次看的书。这就不用我多介绍了吧

2012-12-18

代码重构分析器:SourceMonitor是一个源代码衡量工具

这个工具用来分析你的代码,然后生成一份分析报告,指出那个文件应该被重构,可以看其帮助文档

2009-05-10

设计模式精解pdf打包下载

设计模式精解pdf打包详细描述每个设计模式,获了jolt奖

2009-05-09

实用算法的分析与程序设计

实用算法的分析与程序设计,对各种算法进行了详细的分析和说明

2008-09-22

windows网络编程技术详解及其内幕

本书专门讨论Windows网络编程技术,覆盖Windows 95/98/NT 4/2000/CE平台。内容包括NetBIOS和Windows重定向器方法、Winsock方法、客户端远程访问服务器方法。本书论述深入浅出、用大量实例详解了微软网络API函数的应用。

2008-09-22

IDL 精髓及其在com上的应用

本书对IDL进行了详细的描述以及如何使用IDL,使他变得更容易理解和接受

2008-09-09

面向对象的设计模式及其应用

本书设计实例从面向对象的设计中精选出23个设计模式,总结了面向对象设计中最有价值的经验,并且用简洁可复用的形式表达出来。本书分类描述了一组设计良好,表达清楚的软件设计模式,这些模式在实用环境下有特别有用。

2008-09-01

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除