- 在Jetson Nano上实现单目相机 apritag_ros识别
蒋程扬
ROS机器人自动驾驶视觉检测人工智能
一,apritag_ros安装最开始采用克隆源码编译的方式进行安装,后来在Jetsonnano上有opencv4与opencv3的依赖问题,后来索性直接采用二进制安装:sudoapt-getinstallros-melodic-apriltag-ros二,单目相机数据读取这里使用的是uvc_camera包:launch文件:这里使用了命名空间head_camerahead_camera为相机标定参
- 2021-06-24 生成AprilTag不同家族标签图像教程
Reza_
生成AprilTag不同家族标签图像教程在论文附带的源码中,只给出了生成不同的AprilTag家族的JAVA代码,还有像素值为1的超mini型AprilTag标签图像,本文主要参考国外一位博主的方案,能够使官方提供的像素为1的AprilTag标签图像放大至能使用的程度,并合并至PDF文档。生成AprilTag标签的JAVA代码地址:https://github.com/AprilRobotics/
- 【OpenMV】AprilTag标记跟踪 NCC模板匹配 测距与测量物体大小
北国无红豆
OpenMV学习笔记
目录AprilTag标记跟踪NCC模板匹配测距以及测量物体大小识别乒乓球的距离与大小红色矩形与蓝色矩形同时识别AprilTag标记跟踪Tag36h11,Tag25h9,Tag16h5Tag36h11信息量更大,更准确#AprilTagsExample##ThisexampleshowsthepoweroftheOpenMVCamtodetectAprilTags#ontheOpenMVCamM7.
- python识别ethz_apriltag2
Mr_Sosimple
python开发语言
Introductionethz_apriltag2的tag和普通的apriltag有些许区别;比如可以自定义border大小。使用普通的pip3installapritag包无法识别ethz_apriltag2,需要用ethz的repo识别,以下介绍相关的pythonwrapperRepohttps://github.com/safijari/apriltags2_ethz.gitHowtous
- 使用apriltag_ros检测相机姿态
DCcsdnDC
数码相机
0环境NvidiaJetsonOrinNXJetpack5.1.1双目相机ROSnoetic1相机驱动1.1建立ROS工作空间建立工作空间#在home下名为catkin_ws的新建文件夹mkdir-p~/catkin_ws/src#进入catkin_ws文件夹cd~/catkin_ws/src#将当前文件夹属性转化为工作空间catkin_init_workspace编译工作空间#进入catkin_
- Apriltag码坐标系方向可视化
给算法爸爸上香
6Dposeestimation位姿估计Apriltag
通过下面的脚本可以可视化tag_id为11的Apriltag码的坐标系个坐标轴的朝向:importnumpyasnpimportapriltagimportcv2img=cv2.imread('color_1.png')gray=cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)at_detector=apriltag.Detector(apriltag.DetectorOp
- 基于ros框架,cartographer使用aruco/apriltag作为landmark
可峰科技
2d_slam
在动态环境中,使用aruco码作为landmark有助于机器人的快速定位。这里把主要的使用过程梳理一下,之前做过却没有整理。本文基于ros框架。最近测试发现感觉aruco码检测精度问题,感觉这个实战还有些工作要做。1-首先来个摄像头我使用的是一个usb广角镜头,介于针孔相机和鱼眼相机之间,首先使用ros包usb_cam打开相机https://github.com/ros-drivers/usb_c
- AprilTag码估算平面法向量+相机标定
Arcann
OpenCVAprilTag位姿估计相机标定
由于本人部分原创博客发布在古月居论坛,详细内容点击链接跳转:1.AprilTag探索和原理分析2.相机标定,基于AprilTag估算平面法向量
- 【学习记录】Kalibr标定相机与IMU的一点记录
larry_dongy
SLAM软件与库学习机器人
一周更多的时间在搞这个Kalibr的相机与IMU的标定,记录一些问题:相机重投影误差相机一定要好好标定,如果重投影误差太大,是优化不出来外参的。好在相机内参,与IMU外参标定,都可以用AprilTag棋盘格标定。重投影误差应该在1px以下才能接受,否则重新标定。IMU的内参标定IMU内参标定一开始用的是:imu_utils后来换成了:allan_variance_ros因为据说后者没有这些问题:详
- 38.Isaac教程--AprilTags
扫地的小何尚
ISAAC人工智能计算机视觉ISAACNVIDIA机器人
AprilTagsISAAC教程合集地址文章目录AprilTags源码IsaacCodelet运行示例应用程序在主机系统上运行示例应用程序在Jetson上运行应用程序在Websight中查看应用程序的输出AprilTags是一种流行的基准标记形式。它在机器人技术中有广泛的应用,包括对象跟踪、视觉定位、SLAM精度评估和人机交互。Isaac通过利用GPU加速提供实时AprilTag检测,同时实现高解
- AprilTag在Windows平台VS2015环境下的运行及原理解析
playezio
二维码视觉定位导航自主控制计算机视觉
AprilTag在Windows平台VS2015环境下的运行及原理解析概述源码C版本官方源码C++版本官方源码原理解析自适应阈值分割轮廓查找寻找四边形单应变换解码输出三维位姿概述AprilTag是一个视觉基准库,在AR,机器人,相机校准领域广泛使用。通过特定的标志(与二维码相似,但是降低了复杂度以满足实时性要求),可以快速地检测标志,并计算相对位置。官网:https://april.eecs.um
- Apriltag定位和识别
Terry Cao 漕河泾
VSLAMmatlab开发语言
一、Apriltag定位和识别-知乎(zhihu.com)二、计算机视觉基础——相机标定-知乎(zhihu.com)鱼眼镜头畸变校正请参考:三、sFisheyeCalibrationBasics-MATLAB&Simulink(mathworks.com)V是只由单应矩阵决定的已知量,求解上述线性方程,就可以得到向量b,矩阵B。向量b包含6个未知量,V是2nx6矩阵,n代表单应矩阵个数(或者图像张
- 标志识别之AprilTag3
Terry Cao 漕河泾
VSLAM自动驾驶计算机视觉
AprilTag2在速度上是不尽人意的,原因在于梯度计算和聚类的庞大计算和内存开销。在AprilTag3中进行了多项优化,不仅算法更加鲁棒,时间和内存开销大幅减小,更支持了全新格式的二维码。粗看了下,主要做了几点优化:查找矩形前,通过一种新的二值化方法,直接在二值图上查找(这样带来的风险就是二值化失败,矩形形状被破坏,就无法检测到),在查找四边形时,在并查集搜索时提前截断,比起AprilTag2少
- 使用ROS和AprilTags进行相机定位(二维码定位全流程)
江哥哥的小博客
ROS学习ubuntu定位
使用ROS和AprilTags进行相机定位(二维码定位全流程)配置环境1下载虚拟机2下载Ubuntu16.073安装虚拟机和Ubuntu4安装ROS5USB相机驱动标定、定位1相机标定2下载AprilTag2源码2.1修改文件2.2编译2.3修改二维码标签信息3启动程序3.1启动ros3.2打开摄像头3.3运行apriltags2_ros3.4运行二维码检测节点4可视化显示4.1运行二维码检测节点
- ros下实现usb相机功能,并基于apriltag_ros实现定位
hywmj
位姿估计apriltag计算机视觉
1.安装usb_cam软件包sudoapt-getinstallros-kinetic-usb-cam安装完成后可以启动相机roslaunchusb_camusb_cam-test.launchlaunch文件在/opt/ros/kinetic/share/usb_cam/launch目录下,launch文件如下:可通过ls/dev/video*命令查看当前的相机设备,相应的更改launch文件中
- Apriltag使用
ScaredPan
vlsam自动驾驶opencv机器学习
Apriltag使用开源项目:https://github.com/AprilRobotics/apriltagapriltag库是一个纯c的库,基本不依赖任何其他库。Apriltag目前有版本2和版本3,版本3可兼容版本2.版本3的tag如下图:tag2如下:tag3是检测里面四个点,tag2是检测外面四个点。所以同样的大小的tag,tag2的位姿精度会更高。但tag3的检测速度更快(是tag2
- Intel Realsense D435i + Apriltag_ros 实现对相机姿态的估计
nenchoumi3119
图像处理
这里使用Apriltag_ros功能包可以通过单张rgb图像来估计相机在二维码坐标系上的姿态。软硬件:IntelRealsenseD435iUbuntu18.04DesktopStep1:下载并编译依赖库AprilTag3在这一步的时候如果直接git容易出现Error:RPL报错,比较稳妥的方式是下载他的zip包然后解压。https://github.com/AprilRobotics/april
- apriltag_ros简单上手
Nick.Q
计算机视觉
0平台及准备系统ubuntu18.04ROS-melodic以及相机。本文使用普通的USB相机,提前对USB相机进行标定,获得相机的内外参。具体步骤可参考利用ROScamera_calibration对usb相机标定1下载apriltag_rosmkdir-p~/apriltag_ws/src#建立一个新的工作空间cd~/apriltag_ws/srcgitclonehttps://github.
- 海康威视相机标定、畸变矫正及AprilTag获取视觉标签三维信息
半俗半雅伴逍遥
图像java人工智能自动驾驶
海康威视相机标定、畸变矫正及AprilTag获取视觉标签三维信息一、海康威视相机标定二、相机去畸变三、Apritag_ros获得视觉标签的三维位置一、海康威视相机标定相机标定经调研共发现三种常用方式:利用Matlab的cameraCalibrator工具箱,利用opencv里边的工具,利用ros包,后两种都没有去深入探究,本文采用的是利用Matlab的cameraCalibrator工具箱的方式。
- AprilTag二维码检测和定位
冰达机器人
机器人开源人工智能深度学习
AprilTag简介AprilTag类似于二维码QRcodes(QuickResponseCode;全称为快速响应矩阵图码)AprilTag可用于多种用途,包括相机标定、目标大小估计单目距离测量等。二维码可以直接用打印机打印在纸张上,不需要特殊材料。而AprilTag检测程序可以计算相对于相机的三维位置和二维码所承载的ID信息。参考链接:AprilTagapriltag_ros-ROSWiki使用
- ROS 摄像头校准与Apriltag标签使用
yaohuan8802
ROS计算机视觉
这里写自定义目录标题ROS摄像头校准与Apriltag标签使用ROS校准安装摄像头驱动usb_cam校准操作apriltag_rosapriltag_ros包安装apriltag_ros工作原理标签生成使用apriltag识别功能ROS摄像头校准与Apriltag标签使用最近在研究EAI的移动机器人,发现它里边是采用了Apriltag来识别物体位姿然后用dobot机械臂来进行抓取的,因此单独研究了
- 求助!ROS Apriltag 坐标变换 姿位输出
boyrichard1
apriltag
各位大神们好,我是机器人领域新手。最近在尝试用Apriltag来进行然后进行跟随。我机器人跟随的时候是用所识别的标签x,y两个坐标轴进行计算。但是在所识别出的标签y轴垂直于标签平面,这样的话计算结果不太正确。想请问各位大神,标签位置坐标不对的原因。我按照教程在ROS里成功运行了apriltag包得出如果结果:上面的my-bundle红色轴方向垂直于标签。但是网上的结果相机的z轴和标签的z轴是在一个
- OpenCV apriltag 识别
帅ZR帅
OpenCV_Python3opencv计算机视觉python
学习过程中为了防止遗忘以此文字记录如有错误多多包涵怕什么真理无穷,进一寸有一寸的欢喜---胡适前置内容:pupil_apriltagsOpenCV使用安卓手机作为摄像头_帅ZR帅的博客-CSDN博客学习目标:使用pupil_apriltags库识别apriltags码并进行标记学习内容:importtimeimportpupil_apriltagsasapriltagimportcv2defcv_
- AprilTag_ros的使用
manbushuizhong
linuxubuntu
目录前言一、usb摄像头的安装和使用二、AprilTag_ros包的安装三、单目摄像机的标定四、AprilTag_ros的使用五、其他前言平台:VM虚拟机ROS版本:noeticUbuntu:20.04LTS一、usb摄像头的安装和使用1.下载源码cdcatkin_ws/src#安装在一个ROS工作空间上gitclonehttps://github.com/bosch-ros-pkg/usb_ca
- ROS之读取rosbag并保存到新rosbag
刀么克瑟拉莫
ROSrosbag
#include#include#include#include#include#include#defineforeachBOOST_FOREACHintmain(){rosbag::Bagbag,bw;bag.open("/home/lwd/data/cti_all_bag/2022/apriltag.bag",rosbag::bagmode::Read);bw.open("/home/lwd
- 发现一个aruco在线生成器,可以在线生成aruco CharucoBoard GridBoard AprilTag 图片, 真香
非腹黑
opencv人工智能计算机视觉
最近在研究opencv检测aruco标记项目,想弄点aruco标记码来测试,发现网上很少在线生成aruco标记码的工具,导致在做测试时候浪费了很多时间去搞这个码,基本上大家都用(这个功能太少了https://chev.me/arucogen/不推荐)几经周折,同事介绍了另一个国内工具:www.2weima.com/aruco.html还是国人更懂你。aruco在线生成器支持CharucoBoard
- Openmv第四天之模板匹配
ElE rookie
openmv深度学习人工智能
前几天学的内容是只是关于颜色和Apriltag的识别出来,但是如果颜色一样呢?那东西识别出来不就一个玩意儿了,这样是不好的,所以应该就衍生出了模板匹配。你在openmv内存里面给定一个模板图片,也就是你的目标的样子,你就可以根据样子去找一定是这个样子的目标,一定是什么意思呢,一定的意思我理解为是大小形状都要基本上一样,小了不行,大了也不行,形状也要大致相等。采用的是ncc算法,只能匹配与模板图片大
- openmv第三天之标记跟踪
ElE rookie
python开发语言
AprilTag是一个视觉基准系统感觉就是一个可以定位校准帮助openmv来找到定位的东西官方解释的用处:简单来说,只要把这个tag贴到目标上,就可以在OpenMV上识别出这个标签的3D位置,id。感觉用来辅助贴到目标物体,像gps一样0.0AprilTag的种类这个图案有不同的家,那个家庭里面有不同数目的成员,有效区域方块多的校验信息越多,那么就会越精确,但视力越低,目前还不知道此时的视力是啥。
- 相机标定之使用Kalibr工具箱
Robots.
CameraKalibr相机计算机视觉标定
相机标定之使用Kalibr工具箱1.概述2.准备3.步骤4.参考链接5.相关链接1.概述简单介绍如何使用Kalibr工具箱进行针孔模型相机标定的步骤,供自己以后参考,同时希望给大家带来帮助。2.准备提前准备好标签并打印出来,可以使用A4纸打印,然后粘贴在纸板上,注意粘贴时贴紧纸板,确保位于纸张上的点位于同一平面。官方提供了Aprilgrid、棋盘格、圆形板三种格式。本次标定使用Apriltag,它
- AprilTag详解-Python实现
Magician0619
Python图像处理pythonopencv人工智能计算机视觉
文章目录一、AprilTag简介二、AprilTag原理三、AprilTag图像生成四、OpenMV实现五、pupil-apriltags六、Python代码实现1、检测apriltag并返回相对世界坐标2、无人机实时检测并返回相对坐标一、AprilTag简介AprilTag是一个视觉基准系统,可用于多种任务,包括增强现实,机器人和相机校准。通过特定的标志(与二维码相似,但是降低了复杂度以满足实时
- VMware Workstation 11 或者 VMware Player 7安装MAC OS X 10.10 Yosemite
iwindyforest
vmwaremac os10.10workstationplayer
最近尝试了下VMware下安装MacOS 系统,
安装过程中发现网上可供参考的文章都是VMware Workstation 10以下, MacOS X 10.9以下的文章,
只能提供大概的思路, 但是实际安装起来由于版本问题, 走了不少弯路, 所以我尝试写以下总结, 希望能给有兴趣安装OSX的人提供一点帮助。
写在前面的话:
其实安装好后发现, 由于我的th
- 关于《基于模型驱动的B/S在线开发平台》源代码开源的疑虑?
deathwknight
JavaScriptjava框架
本人从学习Java开发到现在已有10年整,从一个要自学 java买成javascript的小菜鸟,成长为只会java和javascript语言的老菜鸟(个人邮箱:
[email protected])
一路走来,跌跌撞撞。用自己的三年多业余时间,瞎搞一个小东西(基于模型驱动的B/S在线开发平台,非MVC框架、非代码生成)。希望与大家一起分享,同时有许些疑虑,希望有人可以交流下
平台
- 如何把maven项目转成web项目
Kai_Ge
mavenMyEclipse
创建Web工程,使用eclipse ee创建maven web工程 1.右键项目,选择Project Facets,点击Convert to faceted from 2.更改Dynamic Web Module的Version为2.5.(3.0为Java7的,Tomcat6不支持). 如果提示错误,可能需要在Java Compiler设置Compiler compl
- 主管???
Array_06
工作
转载:http://www.blogjava.net/fastzch/archive/2010/11/25/339054.html
很久以前跟同事参加的培训,同事整理得很详细,必须得转!
前段时间,公司有组织中高阶主管及其培养干部进行了为期三天的管理训练培训。三天的课程下来,虽然内容较多,因对老师三天来的课程内容深有感触,故借着整理学习心得的机会,将三天来的培训课程做了一个
- python内置函数大全
2002wmj
python
最近一直在看python的document,打算在基础方面重点看一下python的keyword、Build-in Function、Build-in Constants、Build-in Types、Build-in Exception这四个方面,其实在看的时候发现整个《The Python Standard Library》章节都是很不错的,其中描述了很多不错的主题。先把Build-in Fu
- JSP页面通过JQUERY合并行
357029540
JavaScriptjquery
在写程序的过程中我们难免会遇到在页面上合并单元行的情况,如图所示
如果对于会的同学可能很简单,但是对没有思路的同学来说还是比较麻烦的,提供一下用JQUERY实现的参考代码
function mergeCell(){
var trs = $("#table tr");
&nb
- Java基础
冰天百华
java基础
学习函数式编程
package base;
import java.text.DecimalFormat;
public class Main {
public static void main(String[] args) {
// Integer a = 4;
// Double aa = (double)a / 100000;
// Decimal
- unix时间戳相互转换
adminjun
转换unix时间戳
如何在不同编程语言中获取现在的Unix时间戳(Unix timestamp)? Java time JavaScript Math.round(new Date().getTime()/1000)
getTime()返回数值的单位是毫秒 Microsoft .NET / C# epoch = (DateTime.Now.ToUniversalTime().Ticks - 62135
- 作为一个合格程序员该做的事
aijuans
程序员
作为一个合格程序员每天该做的事 1、总结自己一天任务的完成情况 最好的方式是写工作日志,把自己今天完成了什么事情,遇见了什么问题都记录下来,日后翻看好处多多
2、考虑自己明天应该做的主要工作 把明天要做的事情列出来,并按照优先级排列,第二天应该把自己效率最高的时间分配给最重要的工作
3、考虑自己一天工作中失误的地方,并想出避免下一次再犯的方法 出错不要紧,最重
- 由html5视频播放引发的总结
ayaoxinchao
html5视频video
前言
项目中存在视频播放的功能,前期设计是以flash播放器播放视频的。但是现在由于需要兼容苹果的设备,必须采用html5的方式来播放视频。我就出于兴趣对html5播放视频做了简单的了解,不了解不知道,水真是很深。本文所记录的知识一些浅尝辄止的知识,说起来很惭愧。
视频结构
本该直接介绍html5的<video>的,但鉴于本人对视频
- 解决httpclient访问自签名https报javax.net.ssl.SSLHandshakeException: sun.security.validat
bewithme
httpclient
如果你构建了一个https协议的站点,而此站点的安全证书并不是合法的第三方证书颁发机构所签发,那么你用httpclient去访问此站点会报如下错误
javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path bu
- Jedis连接池的入门级使用
bijian1013
redisredis数据库jedis
Jedis连接池操作步骤如下:
a.获取Jedis实例需要从JedisPool中获取;
b.用完Jedis实例需要返还给JedisPool;
c.如果Jedis在使用过程中出错,则也需要还给JedisPool;
packag
- 变与不变
bingyingao
不变变亲情永恒
变与不变
周末骑车转到了五年前租住的小区,曾经最爱吃的西北面馆、江西水饺、手工拉面早已不在,
各种店铺都换了好几茬,这些是变的。
三年前还很流行的一款手机在今天看起来已经落后的不像样子。
三年前还运行的好好的一家公司,今天也已经不复存在。
一座座高楼拔地而起,
- 【Scala十】Scala核心四:集合框架之List
bit1129
scala
Spark的RDD作为一个分布式不可变的数据集合,它提供的转换操作,很多是借鉴于Scala的集合框架提供的一些函数,因此,有必要对Scala的集合进行详细的了解
1. 泛型集合都是协变的,对于List而言,如果B是A的子类,那么List[B]也是List[A]的子类,即可以把List[B]的实例赋值给List[A]变量
2. 给变量赋值(注意val关键字,a,b
- Nested Functions in C
bookjovi
cclosure
Nested Functions 又称closure,属于functional language中的概念,一直以为C中是不支持closure的,现在看来我错了,不过C标准中是不支持的,而GCC支持。
既然GCC支持了closure,那么 lexical scoping自然也支持了,同时在C中label也是可以在nested functions中自由跳转的
- Java-Collections Framework学习与总结-WeakHashMap
BrokenDreams
Collections
总结这个类之前,首先看一下Java引用的相关知识。Java的引用分为四种:强引用、软引用、弱引用和虚引用。
强引用:就是常见的代码中的引用,如Object o = new Object();存在强引用的对象不会被垃圾收集
- 读《研磨设计模式》-代码笔记-解释器模式-Interpret
bylijinnan
java设计模式
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
package design.pattern;
/*
* 解释器(Interpreter)模式的意图是可以按照自己定义的组合规则集合来组合可执行对象
*
* 代码示例实现XML里面1.读取单个元素的值 2.读取单个属性的值
* 多
- After Effects操作&快捷键
cherishLC
After Effects
1、快捷键官方文档
中文版:https://helpx.adobe.com/cn/after-effects/using/keyboard-shortcuts-reference.html
英文版:https://helpx.adobe.com/after-effects/using/keyboard-shortcuts-reference.html
2、常用快捷键
- Maven 常用命令
crabdave
maven
Maven 常用命令
mvn archetype:generate
mvn install
mvn clean
mvn clean complie
mvn clean test
mvn clean install
mvn clean package
mvn test
mvn package
mvn site
mvn dependency:res
- shell bad substitution
daizj
shell脚本
#!/bin/sh
/data/script/common/run_cmd.exp 192.168.13.168 "impala-shell -islave4 -q 'insert OVERWRITE table imeis.${tableName} select ${selectFields}, ds, fnv_hash(concat(cast(ds as string), im
- Java SE 第二讲(原生数据类型 Primitive Data Type)
dcj3sjt126com
java
Java SE 第二讲:
1. Windows: notepad, editplus, ultraedit, gvim
Linux: vi, vim, gedit
2. Java 中的数据类型分为两大类:
1)原生数据类型 (Primitive Data Type)
2)引用类型(对象类型) (R
- CGridView中实现批量删除
dcj3sjt126com
PHPyii
1,CGridView中的columns添加
array(
'selectableRows' => 2,
'footer' => '<button type="button" onclick="GetCheckbox();" style=&
- Java中泛型的各种使用
dyy_gusi
java泛型
Java中的泛型的使用:1.普通的泛型使用
在使用类的时候后面的<>中的类型就是我们确定的类型。
public class MyClass1<T> {//此处定义的泛型是T
private T var;
public T getVar() {
return var;
}
public void setVa
- Web开发技术十年发展历程
gcq511120594
Web浏览器数据挖掘
回顾web开发技术这十年发展历程:
Ajax
03年的时候我上六年级,那时候网吧刚在小县城的角落萌生。传奇,大话西游第一代网游一时风靡。我抱着试一试的心态给了网吧老板两块钱想申请个号玩玩,然后接下来的一个小时我一直在,注,册,账,号。
彼时网吧用的512k的带宽,注册的时候,填了一堆信息,提交,页面跳转,嘣,”您填写的信息有误,请重填”。然后跳转回注册页面,以此循环。我现在时常想,如果当时a
- openSession()与getCurrentSession()区别:
hetongfei
javaDAOHibernate
来自 http://blog.csdn.net/dy511/article/details/6166134
1.getCurrentSession创建的session会和绑定到当前线程,而openSession不会。
2. getCurrentSession创建的线程会在事务回滚或事物提交后自动关闭,而openSession必须手动关闭。
这里getCurrentSession本地事务(本地
- 第一章 安装Nginx+Lua开发环境
jinnianshilongnian
nginxluaopenresty
首先我们选择使用OpenResty,其是由Nginx核心加很多第三方模块组成,其最大的亮点是默认集成了Lua开发环境,使得Nginx可以作为一个Web Server使用。借助于Nginx的事件驱动模型和非阻塞IO,可以实现高性能的Web应用程序。而且OpenResty提供了大量组件如Mysql、Redis、Memcached等等,使在Nginx上开发Web应用更方便更简单。目前在京东如实时价格、秒
- HSQLDB In-Process方式访问内存数据库
liyonghui160com
HSQLDB一大特色就是能够在内存中建立数据库,当然它也能将这些内存数据库保存到文件中以便实现真正的持久化。
先睹为快!
下面是一个In-Process方式访问内存数据库的代码示例:
下面代码需要引入hsqldb.jar包 (hsqldb-2.2.8)
import java.s
- Java线程的5个使用技巧
pda158
java数据结构
Java线程有哪些不太为人所知的技巧与用法? 萝卜白菜各有所爱。像我就喜欢Java。学无止境,这也是我喜欢它的一个原因。日常
工作中你所用到的工具,通常都有些你从来没有了解过的东西,比方说某个方法或者是一些有趣的用法。比如说线程。没错,就是线程。或者确切说是Thread这个类。当我们在构建高可扩展性系统的时候,通常会面临各种各样的并发编程的问题,不过我们现在所要讲的可能会略有不同。
- 开发资源大整合:编程语言篇——JavaScript(1)
shoothao
JavaScript
概述:本系列的资源整合来自于github中各个领域的大牛,来收藏你感兴趣的东西吧。
程序包管理器
管理javascript库并提供对这些库的快速使用与打包的服务。
Bower - 用于web的程序包管理。
component - 用于客户端的程序包管理,构建更好的web应用程序。
spm - 全新的静态的文件包管
- 避免使用终结函数
vahoa.ma
javajvmC++
终结函数(finalizer)通常是不可预测的,常常也是很危险的,一般情况下不是必要的。使用终结函数会导致不稳定的行为、更差的性能,以及带来移植性问题。不要把终结函数当做C++中的析构函数(destructors)的对应物。
我自己总结了一下这一条的综合性结论是这样的:
1)在涉及使用资源,使用完毕后要释放资源的情形下,首先要用一个显示的方