- 使用BLIP模型生成图像描述的可查询索引
dgay_hua
python计算机视觉开发语言
在本篇文章中,我们将介绍如何使用预训练的SalesforceBLIP图像描述模型,生成一个可查询的图像描述索引。我们将使用ImageCaptionLoader来加载图像,并通过一系列步骤生成查询索引。使用示例代码进行演示,帮助读者理解和实践。技术背景介绍随着计算机视觉技术的发展,图像描述生成成为了重要的研究领域。通过对图像内容自动生成文字描述,可以大大提高对图像信息的检索和管理效率。Salesfo
- 查看opencv版本信息
zhanghui9020
在VS2010中编写控制台C++程序:#include#include"cv.h"usingnamespacestd;main(){cout<<CV_VERSION;}运行即可打印安装的opencv的版本信息
- 深度学习模型中的知识蒸馏是如何工作的?
c++服务器开发
深度学习人工智能
深度学习模型在多个领域,特别是计算机视觉和自然语言处理中,已经取得了革命性的进展。然而,随着模型复杂性和资源需求的不断攀升,如何将这些庞大模型的知识浓缩为更紧凑、更高效的形式,成为了当前研究的热点。知识蒸馏,作为一种将知识从复杂模型转移到更简单模型的策略,已经成为实现这一目标的有效工具。在本文中,我们将深入探究深度学习模型中知识蒸馏的概念、原理及其在各领域的应用,以期为读者提供一个全面而严谨的视角
- Python从0到100(四):Python中的运算符介绍(补充)
是Dream呀
pythonjava数据库
前言:零基础学Python:Python从0到100最新最全教程。想做这件事情很久了,这次我更新了自己所写过的所有博客,汇集成了Python从0到100,共一百节课,帮助大家一个月时间里从零基础到学习Python基础语法、Python爬虫、Web开发、计算机视觉、机器学习、神经网络以及人工智能相关知识,成为学习学习和学业的先行者!欢迎大家订阅专栏:零基础学Python:Python从0到100最新
- Python从0到100(三十五):beautifulsoup的学习
是Dream呀
Dream的茶话会pythonbeautifulsoup学习
前言:零基础学Python:Python从0到100最新最全教程。想做这件事情很久了,这次我更新了自己所写过的所有博客,汇集成了Python从0到100,共一百节课,帮助大家一个月时间里从零基础到学习Python基础语法、Python爬虫、Web开发、计算机视觉、机器学习、神经网络以及人工智能相关知识,成为学习学习和学业的先行者!欢迎大家订阅专栏:零基础学Python:Python从0到100最新
- 《深入浅出AI》前言知识:深度学习基础总结
GoAI
深入浅出AI人工智能深度学习机器学习cnnrnn生成对抗网络神经网络
个人主页:GoAI|公众号:GoAI的学习小屋|交流群:704932595|个人简介:掘金签约作者、百度飞桨PPDE、领航团团长、开源特训营导师、CSDN、阿里云社区人工智能领域博客专家、新星计划计算机视觉方向导师等,专注大数据与人工智能知识分享。AI学习星球推荐:GoAI的学习社区知识星球是一个致力于提供《机器学习|深度学习|CV|NLP|大模型|多模态|AIGC》各个最新AI方向综述、论文等成
- 如何用matlab进行部分式展开_[转载]用MATLAB进行部分分式展开
麦克羊
为了方便LAPLACE反变换,先对F(s)进行部分分式展开。根据F(s)分为具有不同极点的部分分式展开和具有多重极点的部分分式展开。分别讨论。不同极点的部分分式展开:F(s)=B(s)/A(s)=num/den=(b0*s^n+b1*s^(n-1)+...+bn)/(s^n+a1*s^(n-1)+...an)在matlab行向量中,num和den分别表示传递函数分子和分母的系数num=[b0b1.
- 《第2章 位置与姿态描述》代码
神笔馬良
人工智能
最近在学习《视觉伺服/机器人学、机器视觉与控制》,发现书中的代码运行不通顺,原因可能是matlab升级后,部分函数的参数变化了。所以需要记录错误的代码和正确的代码。第一处:为了使上述推导更形象具体,下面我们将使用MATLAB工具箱展示一些具体数值化的例子。首先用函数se2创建一个齐次变换:错误代码T1=se2(1,2,30*pi/180)报错提示:错误使用matlabshared.spatialm
- OpenCV的卡尔曼滤波器:实现和应用
雪域Code
opencv人工智能计算机视觉C/C++
OpenCV的卡尔曼滤波器:实现和应用卡尔曼滤波器(Kalmanfilter)是一种最优估计的算法,在众多领域有着广泛的应用,如控制系统、通信系统、机器人等。OpenCV作为一个计算机视觉库,也提供了对卡尔曼滤波器的支持。本文将介绍OpenCV中卡尔曼滤波器的基本原理、实现方法以及在图像处理中的应用。一、卡尔曼滤波器简介卡尔曼滤波器是一种用于状态估计和信号滤波的算法,主要针对线性、高斯分布的系统。
- 生成式AI如何重塑计算机视觉:自监督学习与稀疏计算的革命
ProgramHan
人工智能计算机视觉学习
生成式AI如何重塑计算机视觉:自监督学习与稀疏计算的革命引言:从“数据饥渴”到“智能涌现”传统计算机视觉高度依赖海量标注数据,但现实场景中标注成本高昂且覆盖范围有限。例如,医疗影像标注需专业医生耗时数月,工业缺陷检测需针对特定产线定制数据集。生成式AI(如Diffusion模型、自监督学习)的崛起,正在打破这一瓶颈——通过更高效的训练范式与计算架构,让机器学会“从无标注数据中看见世界”。(示意图:
- 【深度学习】计算机视觉(CV)-目标检测-DETR(DEtection TRansformer)—— 基于 Transformer 的端到端目标检测
IT古董
深度学习人工智能深度学习计算机视觉目标检测
1.什么是DETR?DETR(DEtectionTRansformer)是FacebookAI(FAIR)于2020年提出的端到端目标检测算法,它基于Transformer架构,消除了FasterR-CNN、YOLO等方法中的候选框(AnchorBoxes)和非极大值抑制(NMS)机制,使目标检测变得更简单、高效。论文:End-to-EndObjectDetectionwithTransforme
- 生态碳汇涡度相关监测与通量数据分析
岁月如歌,青春不败
生态遥感数据分析碳汇生态科学涡度通量大涡模拟MATLAB
1、以涡度通量塔的高频观测数据,基于MATLAB:2、涡度通量观测基本概况:观测技术方法、数据获取与预处理等3、涡度通量数据质量控制:通量数据异常值识别与剔除等4、涡度通量数据缺失插补:结合气象数据进行通量数据缺失插补等5、涡度通量数据组分拆分:计算生态系统呼吸和总初级生产力等6、涡度通量数据可视化分析:绘制不同通量组分数据的时间变化等7、涡度通量与气象数据相关性:时间序列相关分析、回归分析等8、
- 机器学习:支持向量机
小源学AI
人工智能支持向量机机器学习算法
基本概念1.什么是支持向量机支持向量机是一种二分类模型,在机器学习、计算机视觉、数据挖掘中广泛应用,主要用于解决数据分类问题,它的目的是寻找一个超平面对样本进行分割,分割的原则是间隔最大化(也就是数据集的边缘点到分界点的距离d最大)最终转化成一个凸二次规划问题来求解。通常的SVM用于二元分类问题,对于多元分类问题可将其分解为多个二元分类问题,在进行分类。2.最优分类边界什么才是最优分类边界?什么条
- 【多微电网】含多微电网租赁共享储能的配电网博弈优化调度(Matlab代码实现)
科研_研学社
matlab
个人主页欢迎来到本博客❤️❤️博主优势:博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。⛳️座右铭:行百里者,半于九十。本文目录如下:目录1概述2运行结果2.1原文运行结果12.1复现结果图12.2原文结果图22.2复现结果图23文献来源4Matlab代码、数据、文章1概述文献来源:摘要:该文提出多微电网并网系统租赁共享储能组成微电网联盟参与配电网调峰调度的优化调度策略,促进储能高效应用和新能
- 【多微电网】含多微电网租赁共享储能的配电网博弈优化调度(Matlab代码实现)
科研_G.E.M.
matlab
个人主页欢迎来到本博客❤️❤️博主优势:博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。⛳️座右铭:行百里者,半于九十。本文目录如下:目录1概述2运行结果2.1原文运行结果12.1复现结果图12.2原文结果图22.2复现结果图23文献来源4Matlab代码、数据、文章1概述文献来源:摘要:该文提出多微电网并网系统租赁共享储能组成微电网联盟参与配电网调峰调度的优化调度策略,促进储能高效应用和新能
- 基于基于强化学习(Q-Learning)用于底层动态频谱接入(DSA)认知无线电网络的资源分配研究(Matlab代码实现)
长安程序猿
网络matlab开发语言
欢迎来到本博客❤️❤️博主优势:博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。⛳️座右铭:行百里者,半于九十。本文目录如下:目录⛳️赠与读者1概述一、动态频谱接入(DSA)的基本原理与挑战1.DSA的核心机制2.关键挑战二、Q-Learning在DSA资源分配中的应用框架1.算法原理2.典型应用场景三、关键参数与模型设计1.状态空间定义2.动作空间设计3.奖励函数设计四、研究进展与优化方法1.
- 基于图像处理的裂缝检测与特征提取
机器懒得学习
图像处理计算机视觉人工智能
一、引言裂缝检测是基础设施监测中至关重要的一项任务,尤其是在土木工程和建筑工程领域。随着自动化技术的发展,传统的人工巡检方法逐渐被基于图像分析的自动化检测系统所取代。通过计算机视觉和图像处理技术,能够高效、精确地提取裂缝的几何特征,如长度、宽度、方向、面积等,从而为工程质量评估提供数据支持。本文将详细介绍一段用于裂缝检测与特征提取的Python代码,重点讲解其实现的核心算法与关键步骤,分析其应用场
- MATLAB算法实战应用案例精讲-【目标检测】机器视觉-工业相机(补充篇)
林聪木
数码相机matlab算法
目录知识储备光学系统设计全过程算法原理工业相机基本参数以及选型工业相机基本参数:如何选择合适的工业相机:分辨率分辨率的定义与“检测/测量精度”的区别分辨率与相机的匹配相机关键参数设置工业相机的曝光、曝光时间、快门、增益什么是曝光?什么是快门影响曝光的因素工业相机-坐标系和机械手坐标系的标定工业相机-缺陷检测一、相机的选择(1)工业数字相机的分类:(2)相机的主要参数(3)工业数字摄像机主要接口类型
- 【matlab】大小键盘对应的Kbname
有点傻的小可爱
计算机外设
matlab中可以通过Kbname来识别键盘上的键。在写范式的时候,遇到一个问题,我想用大键盘上排成一行的数字按键评分,比如Kbname('1')表示键盘上的数字1,但是这种写法只能识别小键盘上的数字,无法达到我的目的,网上也没找到相关的资料,于是自己尝试。在尝试的过程中,我注意到大键盘上的数字shift之后是一些标点符号,于是我分别尝试了两种思路:1)Kbname('数字对应的标点符号'),比如
- 利用 OpenCV 进行棋盘检测与透视变换
萧鼎
python基础到进阶教程opencv人工智能计算机视觉
利用OpenCV进行棋盘检测与透视变换1.引言在计算机视觉领域,棋盘检测与透视变换是一个常见的任务,广泛应用于摄像机标定、文档扫描、增强现实(AR)等场景。本篇文章将详细介绍如何使用OpenCV进行棋盘检测,并通过透视变换将棋盘区域转换为一个标准的矩形图像。我们将基于一段Python代码进行分析,代码的主要任务包括:读取图像并进行预处理(灰度转换、自适应直方图均衡化、去噪)检测边缘并提取棋盘区域计
- 对换脸、动嘴生成的视频做初筛
之群害马
音视频计算机视觉opencv
首尾帧人脸差异检测代码概述本脚本实现了一个简单的视频筛查系统,主要功能是通过比较视频首帧和尾帧中的人脸差异来判断视频是否合格。如果视频中没有人脸或存在其他异常情况,视频将被移动到错误目录中。具体来说,系统包含以下几个主要步骤:加载视频文件:尝试打开视频文件,并读取首帧和尾帧。人脸检测:使用OpenCV的Haar级联分类器检测视频首帧和尾帧中的人脸。人脸提取与标准化:从检测到的人脸区域中提取并标准化
- 【卡车无人机】遗传算法GA求解卡车联合无人机配送路径规划【含Matlab源码 XYDG001期】
Matlab领域
Matlab路径规划(高阶版)matlab
Matlab领域博客之家博主简介:985研究生,Matlab领域科研开发者;个人主页:Matlab领域代码获取方式:CSDNMatlab领域—代码获取方式座右铭:路漫漫其修远兮,吾将上下而求索。更多Matlab路径规划仿真内容点击①Matlab路径规划(高阶版)②付费专栏Matlab路径规划(进阶版)③付费专栏Matlab路径规划(初级版)⛳️关注CSDNMatlab领域,更多资源等你来!!⛄一、
- CVPR2023 Highlight | ECON:最新单图穿衣人三维重建SOTA算法
3D视觉工坊
3D视觉从入门到精通算法SLAM自动驾驶3D视觉
作者:宁了个宁|来源:计算机视觉工坊在公众号「3D视觉工坊」后台,回复「原论文」可获取论文pdf。添加微信:dddvisiona,备注:三维重建,拉你入群。文末附行业细分群。图1所示。从彩色图像进行人体数字化。ECON结合了自由形式隐式表示的最佳方面,以及明确的拟人化正则化,以推断高保真度的3D人类,即使是宽松的衣服或具有挑战性的姿势。0.笔者个人体会这篇文章讨论了单图像的穿着人类重建问题。隐式方
- 6种最新算法(小龙虾优化算法COA、螳螂搜索算法MSA、红尾鹰算法RTH、新雀优化算法NOA、鳑鲏鱼优化算法BFO、蜘蛛蜂优化算法SWO)求解机器人路径规划(提供MATLAB代码)
IT猿手
机器人路径规划优化算法无人机路径规划算法机器人matlab宽度优先开发语言人工智能前端
一、机器人路径规划介绍移动机器人(Mobilerobot,MR)的路径规划是移动机器人研究的重要分支之,是对其进行控制的基础。根据环境信息的已知程度不同,路径规划分为基于环境信息已知的全局路径规划和基于环境信息未知或局部已知的局部路径规划。随着科技的快速发展以及机器人的大量应用,人们对机器人的要求也越来越高,尤其表现在对机器人的智能化方面的要求,而机器人自主路径规划是实现机器人智能化的重要步骤,路
- 商汤绝影端到端自动驾驶的迭代优化
AGI大模型与大数据研究院
计算机软件编程原理与应用实践javapythonjavascriptkotlingolang架构人工智能
自动驾驶,端到端,迭代优化,深度学习,感知,规划,控制,模型训练,数据增强,模型微调1.背景介绍随着人工智能和计算机视觉技术的飞速发展,自动驾驶汽车从科幻走进了现实。商汤科技推出的绝影端到端自动驾驶系统,就是其中的佼佼者。本文将深入剖析商汤绝影端到端自动驾驶系统的迭代优化过程,帮助读者理解其背后的技术原理和架构设计。2.核心概念与联系商汤绝影端到端自动驾驶系统的核心架构如下:graphLRA[感知
- 【机器学习】半监督和无监督极限学习机SS-US-ELM附Matlab代码
默默科研仔
粉丝福利机器学习人工智能
标题:【机器学习】半监督和无监督极限学习机SS-US-ELM附Matlab代码一、引言1.1研究背景和意义概述研究的背景以及该研究在领域内的重要性。1.2研究现状分析当前领域的研究进展和存在的问题。二、极限学习机(ELM)基本原理2.1ELM的基本模型描述ELM的基本模型结构和工作原理。2.2ELM的学习过程介绍ELM的学习算法和训练过程。三、半监督极限学习机(SS-ELM)3.1SS-ELM的提
- 使用OpenCV在Visual Studio上编译x86或x64平台的应用程序
程序世界航海
opencvvisualstudio人工智能编程
OpenCV是一个广泛使用的计算机视觉库,它提供了丰富的图像处理和计算机视觉算法。如果你想在VisualStudio上编译一个使用OpenCV的应用程序,并且需要针对特定的x86或x64平台进行优化,那么本文将为你提供一些指导。以下是在VisualStudio中编译x86或x64平台上的OpenCV应用程序的步骤:步骤1:安装VisualStudio和OpenCV首先,确保你已经安装了最新版本的V
- 用realsense d435i传感器在实际环境中跑ORB_SLAM3,顺带解决一部分编译问题
睫力上爬
SLAM日常折腾传感器ORB_SLAM3
是的ORB_SLAM3来了,时隔五年,它来带的惊喜到底是啥呢?一个完全依赖于最大后验估计(MAP)的单/双目惯导融合系统高回召的地点识别功能(High-recallplacerecognition)第一个完整的多地图系统(multi-map)一个抽象的相机模型表示论文地址论文细节今天不说,今天主要先拿到代码,并且用自己的传感器试试实际效果编译终端拉代码记得提前安装好OpenCV,Eigen,和Pa
- LSTM-SVM故障诊断 | 基于长短期记忆神经网络-支持向量机多特征分类预测/故障诊断Matlab代码实现
机器学习之心
分类预测神经网络lstm支持向量机LSTM-SVM故障诊断
LSTM-SVM故障诊断|基于长短期记忆神经网络-支持向量机多特征分类预测/故障诊断Matlab代码实现完整代码私信回复LSTM-SVM故障诊断|基于长短期记忆神经网络-支持向量机多特征分类预测/故障诊断Matlab代码实现一、引言1.1、研究背景和意义在现代工业生产中,机械设备的高效稳定运行对保障生产安全和提高生产效率至关重要。因此,故障诊断技术作为预防和维护设备性能的关键手段,受到了广泛关注和
- ROS教程(六):Rviz显示USB摄像头(详细图文)
Leslie___Cheung
ROSROSrvizusb摄像头
目录前言一、RVIZ介绍1.数据类型介绍2.界面介绍二、配置RVIZ1.打开RVIZ2.添加模块三、启动总结(最重要的)前言上一章讲解了如何使用OpenCV调用电脑摄像头或USB摄像头,本章Leslie就讲解如何使用rviz来显示摄像头的画面。一、RVIZ介绍1.数据类型介绍参考ROS教程(四)->数据类型介绍2.界面介绍二、配置RVIZ1.打开RVIZ打开终端,输入rvi
- 深入浅出Java Annotation(元注解和自定义注解)
Josh_Persistence
Java Annotation元注解自定义注解
一、基本概述
Annontation是Java5开始引入的新特征。中文名称一般叫注解。它提供了一种安全的类似注释的机制,用来将任何的信息或元数据(metadata)与程序元素(类、方法、成员变量等)进行关联。
更通俗的意思是为程序的元素(类、方法、成员变量)加上更直观更明了的说明,这些说明信息是与程序的业务逻辑无关,并且是供指定的工具或
- mysql优化特定类型的查询
annan211
java工作mysql
本节所介绍的查询优化的技巧都是和特定版本相关的,所以对于未来mysql的版本未必适用。
1 优化count查询
对于count这个函数的网上的大部分资料都是错误的或者是理解的都是一知半解的。在做优化之前我们先来看看
真正的count()函数的作用到底是什么。
count()是一个特殊的函数,有两种非常不同的作用,他可以统计某个列值的数量,也可以统计行数。
在统
- MAC下安装多版本JDK和切换几种方式
棋子chessman
jdk
环境:
MAC AIR,OS X 10.10,64位
历史:
过去 Mac 上的 Java 都是由 Apple 自己提供,只支持到 Java 6,并且OS X 10.7 开始系统并不自带(而是可选安装)(原自带的是1.6)。
后来 Apple 加入 OpenJDK 继续支持 Java 6,而 Java 7 将由 Oracle 负责提供。
在终端中输入jav
- javaScript (1)
Array_06
JavaScriptjava浏览器
JavaScript
1、运算符
运算符就是完成操作的一系列符号,它有七类: 赋值运算符(=,+=,-=,*=,/=,%=,<<=,>>=,|=,&=)、算术运算符(+,-,*,/,++,--,%)、比较运算符(>,<,<=,>=,==,===,!=,!==)、逻辑运算符(||,&&,!)、条件运算(?:)、位
- 国内顶级代码分享网站
袁潇含
javajdkoracle.netPHP
现在国内很多开源网站感觉都是为了利益而做的
当然利益是肯定的,否则谁也不会免费的去做网站
&
- Elasticsearch、MongoDB和Hadoop比较
随意而生
mongodbhadoop搜索引擎
IT界在过去几年中出现了一个有趣的现象。很多新的技术出现并立即拥抱了“大数据”。稍微老一点的技术也会将大数据添进自己的特性,避免落大部队太远,我们看到了不同技术之间的边际的模糊化。假如你有诸如Elasticsearch或者Solr这样的搜索引擎,它们存储着JSON文档,MongoDB存着JSON文档,或者一堆JSON文档存放在一个Hadoop集群的HDFS中。你可以使用这三种配
- mac os 系统科研软件总结
张亚雄
mac os
1.1 Microsoft Office for Mac 2011
大客户版,自行搜索。
1.2 Latex (MacTex):
系统环境:https://tug.org/mactex/
&nb
- Maven实战(四)生命周期
AdyZhang
maven
1. 三套生命周期 Maven拥有三套相互独立的生命周期,它们分别为clean,default和site。 每个生命周期包含一些阶段,这些阶段是有顺序的,并且后面的阶段依赖于前面的阶段,用户和Maven最直接的交互方式就是调用这些生命周期阶段。 以clean生命周期为例,它包含的阶段有pre-clean, clean 和 post
- Linux下Jenkins迁移
aijuans
Jenkins
1. 将Jenkins程序目录copy过去 源程序在/export/data/tomcatRoot/ofctest-jenkins.jd.com下面 tar -cvzf jenkins.tar.gz ofctest-jenkins.jd.com &
- request.getInputStream()只能获取一次的问题
ayaoxinchao
requestInputstream
问题:在使用HTTP协议实现应用间接口通信时,服务端读取客户端请求过来的数据,会用到request.getInputStream(),第一次读取的时候可以读取到数据,但是接下来的读取操作都读取不到数据
原因: 1. 一个InputStream对象在被读取完成后,将无法被再次读取,始终返回-1; 2. InputStream并没有实现reset方法(可以重
- 数据库SQL优化大总结之 百万级数据库优化方案
BigBird2012
SQL优化
网上关于SQL优化的教程很多,但是比较杂乱。近日有空整理了一下,写出来跟大家分享一下,其中有错误和不足的地方,还请大家纠正补充。
这篇文章我花费了大量的时间查找资料、修改、排版,希望大家阅读之后,感觉好的话推荐给更多的人,让更多的人看到、纠正以及补充。
1.对查询进行优化,要尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。
2.应尽量避免在 where
- jsonObject的使用
bijian1013
javajson
在项目中难免会用java处理json格式的数据,因此封装了一个JSONUtil工具类。
JSONUtil.java
package com.bijian.json.study;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
- [Zookeeper学习笔记之六]Zookeeper源代码分析之Zookeeper.WatchRegistration
bit1129
zookeeper
Zookeeper类是Zookeeper提供给用户访问Zookeeper service的主要API,它包含了如下几个内部类
首先分析它的内部类,从WatchRegistration开始,为指定的znode path注册一个Watcher,
/**
* Register a watcher for a particular p
- 【Scala十三】Scala核心七:部分应用函数
bit1129
scala
何为部分应用函数?
Partially applied function: A function that’s used in an expression and that misses some of its arguments.For instance, if function f has type Int => Int => Int, then f and f(1) are p
- Tomcat Error listenerStart 终极大法
ronin47
tomcat
Tomcat报的错太含糊了,什么错都没报出来,只提示了Error listenerStart。为了调试,我们要获得更详细的日志。可以在WEB-INF/classes目录下新建一个文件叫logging.properties,内容如下
Java代码
handlers = org.apache.juli.FileHandler, java.util.logging.ConsoleHa
- 不用加减符号实现加减法
BrokenDreams
实现
今天有群友发了一个问题,要求不用加减符号(包括负号)来实现加减法。
分析一下,先看最简单的情况,假设1+1,按二进制算的话结果是10,可以看到从右往左的第一位变为0,第二位由于进位变为1。
 
- 读《研磨设计模式》-代码笔记-状态模式-State
bylijinnan
java设计模式
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
/*
当一个对象的内在状态改变时允许改变其行为,这个对象看起来像是改变了其类
状态模式主要解决的是当控制一个对象状态的条件表达式过于复杂时的情况
把状态的判断逻辑转移到表示不同状态的一系列类中,可以把复杂的判断逻辑简化
如果在
- CUDA程序block和thread超出硬件允许值时的异常
cherishLC
CUDA
调用CUDA的核函数时指定block 和 thread大小,该大小可以是dim3类型的(三维数组),只用一维时可以是usigned int型的。
以下程序验证了当block或thread大小超出硬件允许值时会产生异常!!!GPU根本不会执行运算!!!
所以验证结果的正确性很重要!!!
在VS中创建CUDA项目会有一个模板,里面有更详细的状态验证。
以下程序在K5000GPU上跑的。
- 诡异的超长时间GC问题定位
chenchao051
jvmcmsGChbaseswap
HBase的GC策略采用PawNew+CMS, 这是大众化的配置,ParNew经常会出现停顿时间特别长的情况,有时候甚至长到令人发指的地步,例如请看如下日志:
2012-10-17T05:54:54.293+0800: 739594.224: [GC 739606.508: [ParNew: 996800K->110720K(996800K), 178.8826900 secs] 3700
- maven环境快速搭建
daizj
安装mavne环境配置
一 下载maven
安装maven之前,要先安装jdk及配置JAVA_HOME环境变量。这个安装和配置java环境不用多说。
maven下载地址:http://maven.apache.org/download.html,目前最新的是这个apache-maven-3.2.5-bin.zip,然后解压在任意位置,最好地址中不要带中文字符,这个做java 的都知道,地址中出现中文会出现很多
- PHP网站安全,避免PHP网站受到攻击的方法
dcj3sjt126com
PHP
对于PHP网站安全主要存在这样几种攻击方式:1、命令注入(Command Injection)2、eval注入(Eval Injection)3、客户端脚本攻击(Script Insertion)4、跨网站脚本攻击(Cross Site Scripting, XSS)5、SQL注入攻击(SQL injection)6、跨网站请求伪造攻击(Cross Site Request Forgerie
- yii中给CGridView设置默认的排序根据时间倒序的方法
dcj3sjt126com
GridView
public function searchWithRelated() {
$criteria = new CDbCriteria;
$criteria->together = true; //without th
- Java集合对象和数组对象的转换
dyy_gusi
java集合
在开发中,我们经常需要将集合对象(List,Set)转换为数组对象,或者将数组对象转换为集合对象。Java提供了相互转换的工具,但是我们使用的时候需要注意,不能乱用滥用。
1、数组对象转换为集合对象
最暴力的方式是new一个集合对象,然后遍历数组,依次将数组中的元素放入到新的集合中,但是这样做显然过
- nginx同一主机部署多个应用
geeksun
nginx
近日有一需求,需要在一台主机上用nginx部署2个php应用,分别是wordpress和wiki,探索了半天,终于部署好了,下面把过程记录下来。
1. 在nginx下创建vhosts目录,用以放置vhost文件。
mkdir vhosts
2. 修改nginx.conf的配置, 在http节点增加下面内容设置,用来包含vhosts里的配置文件
#
- ubuntu添加admin权限的用户账号
hongtoushizi
ubuntuuseradd
ubuntu创建账号的方式通常用到两种:useradd 和adduser . 本人尝试了useradd方法,步骤如下:
1:useradd
使用useradd时,如果后面不加任何参数的话,如:sudo useradd sysadm 创建出来的用户将是默认的三无用户:无home directory ,无密码,无系统shell。
顾应该如下操作:
- 第五章 常用Lua开发库2-JSON库、编码转换、字符串处理
jinnianshilongnian
nginxlua
JSON库
在进行数据传输时JSON格式目前应用广泛,因此从Lua对象与JSON字符串之间相互转换是一个非常常见的功能;目前Lua也有几个JSON库,本人用过cjson、dkjson。其中cjson的语法严格(比如unicode \u0020\u7eaf),要求符合规范否则会解析失败(如\u002),而dkjson相对宽松,当然也可以通过修改cjson的源码来完成
- Spring定时器配置的两种实现方式OpenSymphony Quartz和java Timer详解
yaerfeng1989
timerquartz定时器
原创整理不易,转载请注明出处:Spring定时器配置的两种实现方式OpenSymphony Quartz和java Timer详解
代码下载地址:http://www.zuidaima.com/share/1772648445103104.htm
有两种流行Spring定时器配置:Java的Timer类和OpenSymphony的Quartz。
1.Java Timer定时
首先继承jav
- Linux下df与du两个命令的差别?
pda158
linux
一、df显示文件系统的使用情况,与du比較,就是更全盘化。 最经常使用的就是 df -T,显示文件系统的使用情况并显示文件系统的类型。 举比例如以下: [root@localhost ~]# df -T Filesystem Type &n
- [转]SQLite的工具类 ---- 通过反射把Cursor封装到VO对象
ctfzh
VOandroidsqlite反射Cursor
在写DAO层时,觉得从Cursor里一个一个的取出字段值再装到VO(值对象)里太麻烦了,就写了一个工具类,用到了反射,可以把查询记录的值装到对应的VO里,也可以生成该VO的List。
使用时需要注意:
考虑到Android的性能问题,VO没有使用Setter和Getter,而是直接用public的属性。
表中的字段名需要和VO的属性名一样,要是不一样就得在查询的SQL中
- 该学习笔记用到的Employee表
vipbooks
oraclesql工作
这是我在学习Oracle是用到的Employee表,在该笔记中用到的就是这张表,大家可以用它来学习和练习。
drop table Employee;
-- 员工信息表
create table Employee(
-- 员工编号
EmpNo number(3) primary key,
-- 姓