- 【缺陷检测】基于计算机视觉实现电路板智能检测系统附Matlab代码
matlab科研助手
计算机视觉matlab人工智能
✅作者简介:热爱科研的Matlab仿真开发者,擅长数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。往期回顾关注个人主页:Matlab科研工作室个人信条:格物致知,完整Matlab代码及仿真咨询内容私信。内容介绍随着信息技术的飞速发展和电子产品的日益普及,印刷电路板(PCB)作为电子产品的核心组件,其质量直接关系到整个系统的性能和可靠性。传统的电路板检测主要依赖人工目检,存在效率低下
- 嵌入式硬件篇---核心板制作
Atticus-Orion
嵌入式硬件篇单片机嵌入式硬件
自制以ESP32为核心的电路板时,需要兼顾电气性能、功能完整性、调试便利性和实际使用场景,同时需特别关注ESP32的射频特性(Wi-Fi/蓝牙)和电源需求。以下从“必须包含的部分”和“需考虑的关键问题”两方面详细说明:一、自制ESP32电路板必须包含的核心部分ESP32作为主控(集成Wi-Fi、蓝牙、MCU),其电路板设计需围绕“供电-核心-通信-交互-扩展”展开,至少包含以下部分:1.核心控制模
- 大一暑假适合学51单片机吗?
淘晶驰AK
51单片机嵌入式硬件单片机
大一暑假学51单片机,简直是老天爷赏饭吃的黄金窗口。我当时就是靠着这两个月,把从课本上看来的C语言指针、循环语句,变成了能让LED按节奏跳舞的真本事。学期里总被高数作业和英语背单词挤得没整块时间,焊个电路板还得算着实验室关门时间。暑假就不一样了,早上自然醒后泡杯咖啡,搬个小桌子到阳台,开发板一铺就是一整天。记得第一次烧写程序时,手抖着插杜邦线,结果把VCC接到了GND,开发板瞬间冒出股焦味——后来
- 主板基础知识
bcbobo21cn
硬件主板
主板,又叫主机板(mainboard)、系统板(systemboard)、或母板(motherboard),是计算机最基本的同时也是最重要的部件之一。主板一般为矩形电路板,上面安装了组成计算机的主要电路系统,一般有BIOS芯片、I/O控制芯片、键盘和面板控制开关接口、指示灯插接件、扩充插槽、主板及插卡的直流电源供电接插件等元件。主板制造质量的高低,决定了硬件系统的稳定性。主板与CPU关系密切,每一
- 低成本作弊神器?使用ESP32将通义千问AI接入学生计算器
前因:IT之家9月24日消息,YouTube频道ChromaLock于9天前发布视频,介绍了名为TI-32的改造电路板,加装在德州仪器TI-84Plus图形计算器上,可以接入ChatGPT。IT之家查询公开资料,在PSAT、SAT和ACT大学入学考试、IB和AP考试中,标准化组织已经批准考生使用TI-84Plus图形计算器。ChromaLock探索了该计算器的连接端口,设计了名为TI-32的改造电
- Halcon例程学习四:pcb_inspection.hdev
CVer_
Halcon例程学习学习
一、例程介绍这个例程主要是检测pcb电路板中的一些电路线缺陷二、例程相关算子gray_opening_shape()//特定形状结构元的灰度开运算gray_closing_shape()//特定形状结构元的灰度闭运算dyn_threshold()//动态二值化操作三、例程处理流程1.对原图像进行灰度开运算,图像先腐蚀再膨胀。经过灰度开运算后,图像整体会变暗一些,并且会将黑色区域中的白色缺陷进行填充
- 扒开嵌入式硬件的底裤(上)!从 PCB 到 FPGA/IC 设计,小白到 CTO 的必学秘籍 硬核知识点全揭秘!从c语言入门到mcu与arm架构及外设相关
small_wh1te_coder
嵌入式内核嵌入式开发嵌入式硬件算法c汇编面试驱动开发单片机
【硬核揭秘】嵌入式硬件工程师的“底裤”:从入门到牛逼,你必须知道的一切!第一部分:破冰与认知——嵌入式硬件工程师的“世界观”嘿,各位C语言老铁,以及所有对“让硬件听你话”充满好奇的朋友们!我是你们的老朋友,一个常年“折腾”在代码和电路板之间的码农。今天,咱们要聊一个真正能让你“硬”起来的话题——如何成为一个合格、优秀、牛逼的嵌入式硬件工程师!你可能正坐在电脑前,敲着C语言代码,刷着力扣算法题,心里
- 高边驱动与低边驱动
高边驱动与低边驱动电路板上遇到了高边驱动的问题然后百度看了一些关于这些方面的知识,看到一个比较好的总结就拿了过来,感觉看了之后感觉思路比较清晰。高边指电源,低边指地,高边驱动和低边驱动是用来调试功率的,以驱动负载。高边驱动:开关位于电源和负载之间;低边驱动:开关位于负载和地之间。通俗的来讲,高边驱动(HSD)是指通过直接在用电器或者驱动装置前通过在电源线闭合开关来实现驱动装置的使能,而低边驱动(L
- 两个点 定位_基于双天线的北斗定位系统设计与实现
weixin_39697096
两个点定位
前期实际北斗模块定位误差统计分析中得出了北斗模块的定位误差分布服从正态分布,根据北斗模块定位误差分布的规律,利用在同一块电路板上的双天线模块接收北斗定位信号,将定位信息传给TMS320F28335DSP芯片,DSP对北斗模块给出的定位信息做实时算法处理,并将处理后的定位信息传给嵌入式ARM芯片,ARM芯片在TFT液晶屏上更新定位信息,同时根据用户要求来设置北斗模块的工作模式。在接收不到北斗定位信息
- 多模态进化论:GPT-5V图文推理能力在工业质检中的颠覆性应用
HeartException
人工智能
前言前些天发现了一个巨牛的人工智能免费学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站《多模态进化论:GPT-5V图文推理能力在工业质检中的颠覆性应用》副标题:2025年实测报告显示误检率降至0.0038%,重构制造业质量标准体系封面建议:GPT-5V识别微米级电路板缺陷的对比图,背景显示传统AOI与GPT-5V的误检率曲线一、工业质检的范式革命▶︎传统视觉检测的三大死穴传统AO
- 如何在项目中集成和使用 nPM2100 裸机驱动程序(非NCS)
Halfway--
Nordic硬件工程射频工程mcu嵌入式硬件
1:为什么选择Nordic电源管理芯片?https://www.nordicsemi.com/Products/Power-Management-ICs最高能源效率:超低功耗意味着从电子离开电池到射频信号转换为无线电波之间的最高能量效率。高集成:将重要的系统和电源管理功能与基本的PMIC功能结合在一起,在紧凑的封装中,减少了电路板空间、复杂性和材料清单。无缝开发:在完美的世界中,硬件工程师不需要编
- PCB设计实践(三十七)PCB机械孔设计全解析:作用原理与设计规范指南
技术流浪者
PCB设计硬件工程PCB设计单片机嵌入式硬件
在PCB设计中,机械孔是实现电路板机械固定、电气连接和功能扩展的核心要素之一。其设计质量直接影响PCB的组装效率、结构稳定性和长期可靠性。本文将从机械孔的基础概念出发,系统阐述其在PCB设计中的作用原理、分类特性、设计规范及进阶技巧,为工程师提供全面的设计指导。一、机械孔的核心作用解析机械孔在PCB中承担着多重关键功能,其作用远超过单纯的物理开孔概念:1.机械固定与结构支撑作为电路板与外壳、散热器
- PCB板高速飞拍检测系统 助力电子制造自动化领域
51camera
PCB检测高速飞拍系统
PCB板高速飞拍技术通过其高速、高精度、实时性的优势,有效解决了电子制造(尤其是PCB生产与组装)中的多个关键难题:1、传统AOI或人工检测需停线或降速,拖累生产效率。2、抽检模式漏检率高,批量性缺陷发现滞后。3、高密度PCB(如HDI板、MiniLED基板)元件微小(01005封装、0.2mm焊盘),人工或低速设备难以精准定位。4、柔性电路板(FPC)易变形,传统接触式检测易造成损伤。PCB板高
- 冒烟测试概念速解
77赫兹
软件测试
最近很多人对冒烟测试这个概念发出疑问。那么我就来简单解释一下什么是冒烟测试,以及冒烟测试的由来。1.冒烟测试的由来硬件测试的起源:从“冒烟”到基础功能验证在电子工程领域,早期工程师在调试新硬件(如电路板、芯片)时,会进行一项基础测试:通电后观察设备是否会因设计或制造缺陷而出现明显故障,例如是否会冒烟、起火、发出异常声响或过热。若设备通电后“冒烟”,说明存在严重的硬件缺陷,需立即停止测试并排查问题;
- cadence allegro导入dxf文件
师范大学生
cadenceallegro
PCB文件的板框一般为dxf文件形式。在设计异型板和有特殊规格需求的电路板时需要将对应的dxf文件导入到pcb工程中。 该操作可分为两步: 1.将dxf文件导入到工程中。 2.利用导入的dxf文件绘制板框。 导入dxf文件 在pcbeditor软件里点击file->import->DXF。弹出以下窗口。 在该窗口中需要设置的内容有: 1.需要导入的dxf文件的路径。 2.单位由
- arduino IDE 这个软件为啥大学生用两三天就写出来
yifa20160404
ide
2005年冬天,MassimoBanzi跟DavidCuartielles讨论了这个题。DavidCuartielles是一个西班牙籍晶片工程师,当时在这所学校做访问学者。两人决定设计自己的电路板,并引入了Banzi的学生DavidMellis为电路板设计编程语言。两天以后,DavidMellis就写出了程序。又过了三天,电路板就完工了。这块电路板被命名为Arduino。完整开发一个可用的Ardu
- I²C总线应用场景及1.8V与3.3V电压选择
HH予
嵌入式驱动工程项目开发嵌入式硬件
以下是关于I²C总线应用场景及1.8V与3.3V电压选择的详细分析:一、I²C总线的典型应用场景1.板内通信(主要场景)描述:I²C最初设计是为电路板(PCB)上的芯片间短距离通信,尤其适用于集成度高的系统。典型器件:传感器模块(如温湿度传感器BME280)。存储芯片(如EEPROM24C32)。电源管理芯片(PMIC)。显示屏控制器(如OLED驱动IC)。优点:减少PCB走线复杂度(仅需SDA、
- 将创世SD NAND FLASH设计在无人机上,可从硬件适配、接口与协议兼容、性能匹配
将创世SDNANDFLASH设计在无人机上,可从硬件适配、接口与协议兼容、性能匹配、可靠性设计、散热与电磁兼容、软件与固件支持等方面入手,以下是详细介绍:硬件适配·封装形式:创世SDNANDFLASH有LGA-8等封装形式,尺寸较小,如6x8mm,适合无人机内部有限的空间。在无人机设计时,可根据电路板布局和空间结构,选择合适的封装形式,确保其能稳定安装在电路板上,且不与其他部件产生干涉。·安装方式
- 国内IATF16949认证汽车PCB厂家有哪些?
农民也会写代码
汽车
在汽车电子化、智能化浪潮的推动下,印刷电路板(PCB)作为核心组件,其质量直接关系到整车性能与安全性。IATF16949认证作为全球汽车行业公认的质量管理体系标准,对生产流程、可追溯性、风险管控等环节提出严苛要求。本文精选五家通过该认证的国内优质汽车PCB厂家,从技术沉淀、生产实力到服务优势展开剖析,为行业客户提供权威参考。一、猎板PCB猎板以“高精度、高可靠性”为核心竞争力,深耕汽车电子领域多年
- 猎板十层pcb板生产流程详解
在电子设备向高性能、高集成度迈进的今天,十层PCB板已成为高端电子产品的核心载体。作为国内领先的PCB制造服务商,猎板以严苛的工艺标准和全流程质量管控,打造出稳定可靠的十层电路板。本文将带您走进猎板的生产车间,揭秘一块十层PCB从设计图纸到成品诞生的完整旅程。第一阶段:工程文件处理十层PCB的设计复杂度远超普通线路板,猎板工程师团队首先会对客户提供的Gerber文件进行全方位“体检”。通过专业软件
- PCBA焊点空洞如何解决?一文搞懂
捷配科技
PCB大全制造pcb工艺捷配
焊点空洞已成为影响产品可靠性的“隐形杀手”。焊点空洞不仅是工艺缺陷,更是埋藏在电路板中的“定时炸弹”。本文将深度解析空洞成因,提供从设计到工艺的全链路解决方案。空洞是如何形成的?焊点空洞的本质是焊接过程中气体(助焊剂分解物、水汽等)被包裹在熔融焊料中,冷却后形成的微观缺陷。其形成过程可分为三个阶段:气体生成:助焊剂中的有机物(如松香衍生物)在高温(200℃+)下裂解,产生CO₂、H₂O等气体。气体
- 从走线到互连:优化高速信号路径设计的快速指南
David WangYang
硬件开发
从物联网网关和边缘设备到数据中心服务器和网络基础设施卡,几乎所有类型设备的设计人员都面临着压力,他们需要更快地将更多数据移入、移出和移出其系统。如今价格实惠的高速IC使设计人员能够轻松扩展系统速度以满足最终用户的需求。在纸面上。在电路板上以及整个系统的互连过程中,共模噪声、串扰以及信号路径阻抗和谐振引起的损耗等影响可能会挑战Gbit/s及以上速度下信号的完整性。这些不良影响的原因包括耦合、外部噪声
- 霍尼韦尔05283800-RP PCBA组件(含扫描仪控制与直流驱动器#1)
HFD18005007289.
PCBA组件霍尼韦尔测厚仪配件
霍尼韦尔05283800-RPPCBA组件(含扫描仪控制与直流驱动器#1),以下是技术解析与建议:一、组件功能解析PCBA核心功能$$P_{control}=V_{ref}\timesI_{sense}$$该电路板通过电压基准$V_{ref}$与传感电流$I_{sense}$实现精准控制,主要承担:扫描头运动轨迹计算光电信号转换处理电机驱动信号生成直流驱动器特性工作电压范围:$24V_{DC}\p
- 舵机在无人机中的应用
东莞市德晟智能科技有限公司
无人机舵机伺服舵机德晟智能舵机控制航模舵机
一、舵机工作原理舵机是一种位置(角度)伺服的驱动器,由电子控制与机械控制部分组成。当控制信号输入时,电子控制部分会根据控制器的指令调节直流电机输出的旋转角度和速度,由机械部分转化为控制面的位移以及相应的角度变化。舵机的输出轴与位置反馈电位计相连,通过电位计将输出角度的电压信号反馈回控制电路板,从而实现闭环控制。二、在无人机上的应用舵机在无人机上的应用广泛且关键,主要体现在以下几个方面:1、飞行控制
- 微型PCB打样厂家选型指南
农民也会写代码
制造pcb工艺
智能手机、可穿戴设备、医疗电子等高精尖领域,微型PCB(印制电路板)如同设备的“神经中枢”,承载着信号传输、电源分配、元件互联等核心功能。其设计精度与制造质量直接决定了产品的性能上限与可靠性。而打样环节,则是从概念设计到量产落地的关键桥梁——它既是设计可行性的“试金石”,也是成本控制与效率优化的“第一战场”。本指南将深度解析微型PCB打样的技术细节、服务选择与实战策略,助力工程师与采购团队高效完成
- 沉金PCB电路板制造有哪些操作要点需要注意?
猎板阿权
制造pcb工艺
尽管沉金表面处理的价格较高,但它生产高质量产品的成功率很高。它在多个热循环下保持,显示出良好的可焊性,是一个合适的选择,电线粘结。顾名思义,它由两层涂层组成——镍和金。镍保护基础铜层,使电子元件的安全连接,而金作为镍的防腐措施。如果您正在寻找沉金PCB的专业知识,或者想了解表面光洁度,请查看并阅读下面这篇文章的内容。沉金在PCB中的特点是什么?这种类型的表面处理包括两层金属涂层;它由一层薄薄的浸渍
- 柔性电路的崛起
硬核科技
硬件开发硬件电路板PCBFPC柔性板
随着电子产品日益向轻薄化、小型化、可穿戴化发展,传统刚性电路板(PCB)已难以独自满足结构复杂、空间有限的新型设备需求。在此背景下,柔性电路板(FPC)凭借其出色的可弯折性、轻量化、高密度布线能力,逐步成为连接各类元器件与结构模块的重要载体,被广泛应用于手机、可穿戴设备、医疗器械、光通信模块等多个关键领域。一、FPC技术解析:结构设计与性能优势FPC(FlexiblePrintedCircuit)
- 优化设计的无刷电调及其上位机软件
好好同学
本文还有配套的精品资源,点击获取简介:无刷电调是无人机、航模等领域的关键组件,本资料介绍了如何通过改进电路板设计、调整应用接口、替换适合的电子元器件,以及优化控制算法来提升其性能和适用性。上位机软件在电调参数配置、故障诊断和固件更新方面发挥关键作用,本资料将深入讲解软件开发与应用,以实现最佳电调性能。1.无刷电调硬件设计优化简介在现代工业和消费电子产品中,无刷电机因其高效、低噪音和长寿命的特性而变
- Proteus:Proteus中的原理图模板
广州风标电子
proteus嵌入式硬件
原理图模板提供了预配置的原理图样式和PCB数据初始化方法,Proteus中提供了多种标准模板,用户也可以轻松创建自己的模板。在Proteus中创建新项目时,可以选择这些模板。主要功能Proteus原理图捕捉功能具有智能、无模式布线功能,完全支持终端连接、总线连接和分层设计。可用于颜色样式、标题块和边框网格的示意图模板。使用智能边框和元件布局报告来定位元件。PCB模板包括电路板边缘、安装孔和图形。技
- PCB制造影响沉金价格的因素有哪些?
猎板阿权
制造pcb工艺
猎板PCB告诉你影响电路板沉金价格的因素,制作电路板时提高质量和外观的必备费用电路板沉金价格是指在进行电路板制作时,采用沉金工艺所需的费用。沉金工艺是一种通过在电路板表面沉积金属层来提高其可焊性和外观质量的电镀技术。由于沉金工艺具有许多优点,因此被广泛应用于电路板制作中。沉金工艺可以提高电路板的可靠性。通过在电路板表面沉积一层金属层,可以有效地增强电路板的硬度,防止其受到机械损伤或化学腐蚀。此外,
- LeetCode[Math] - #66 Plus One
Cwind
javaLeetCode题解AlgorithmMath
原题链接:#66 Plus One
要求:
给定一个用数字数组表示的非负整数,如num1 = {1, 2, 3, 9}, num2 = {9, 9}等,给这个数加上1。
注意:
1. 数字的较高位存在数组的头上,即num1表示数字1239
2. 每一位(数组中的每个元素)的取值范围为0~9
难度:简单
分析:
题目比较简单,只须从数组
- JQuery中$.ajax()方法参数详解
AILIKES
JavaScriptjsonpjqueryAjaxjson
url: 要求为String类型的参数,(默认为当前页地址)发送请求的地址。
type: 要求为String类型的参数,请求方式(post或get)默认为get。注意其他http请求方法,例如put和 delete也可以使用,但仅部分浏览器支持。
timeout: 要求为Number类型的参数,设置请求超时时间(毫秒)。此设置将覆盖$.ajaxSetup()方法的全局
- JConsole & JVisualVM远程监视Webphere服务器JVM
Kai_Ge
JVisualVMJConsoleWebphere
JConsole是JDK里自带的一个工具,可以监测Java程序运行时所有对象的申请、释放等动作,将内存管理的所有信息进行统计、分析、可视化。我们可以根据这些信息判断程序是否有内存泄漏问题。
使用JConsole工具来分析WAS的JVM问题,需要进行相关的配置。
首先我们看WAS服务器端的配置.
1、登录was控制台https://10.4.119.18
- 自定义annotation
120153216
annotation
Java annotation 自定义注释@interface的用法 一、什么是注释
说起注释,得先提一提什么是元数据(metadata)。所谓元数据就是数据的数据。也就是说,元数据是描述数据的。就象数据表中的字段一样,每个字段描述了这个字段下的数据的含义。而J2SE5.0中提供的注释就是java源代码的元数据,也就是说注释是描述java源
- CentOS 5/6.X 使用 EPEL YUM源
2002wmj
centos
CentOS 6.X 安装使用EPEL YUM源1. 查看操作系统版本[root@node1 ~]# uname -a Linux node1.test.com 2.6.32-358.el6.x86_64 #1 SMP Fri Feb 22 00:31:26 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux [root@node1 ~]#
- 在SQLSERVER中查找缺失和无用的索引SQL
357029540
SQL Server
--缺失的索引
SELECT avg_total_user_cost * avg_user_impact * ( user_scans + user_seeks ) AS PossibleImprovement ,
last_user_seek ,
 
- Spring3 MVC 笔记(二) —json+rest优化
7454103
Spring3 MVC
接上次的 spring mvc 注解的一些详细信息!
其实也是一些个人的学习笔记 呵呵!
- 替换“\”的时候报错Unexpected internal error near index 1 \ ^
adminjun
java“\替换”
发现还是有些东西没有刻子脑子里,,过段时间就没什么概念了,所以贴出来...以免再忘...
在拆分字符串时遇到通过 \ 来拆分,可是用所以想通过转义 \\ 来拆分的时候会报异常
public class Main {
/*
- POJ 1035 Spell checker(哈希表)
aijuans
暴力求解--哈希表
/*
题意:输入字典,然后输入单词,判断字典中是否出现过该单词,或者是否进行删除、添加、替换操作,如果是,则输出对应的字典中的单词
要求按照输入时候的排名输出
题解:建立两个哈希表。一个存储字典和输入字典中单词的排名,一个进行最后输出的判重
*/
#include <iostream>
//#define
using namespace std;
const int HASH =
- 通过原型实现javascript Array的去重、最大值和最小值
ayaoxinchao
JavaScriptarrayprototype
用原型函数(prototype)可以定义一些很方便的自定义函数,实现各种自定义功能。本次主要是实现了Array的去重、获取最大值和最小值。
实现代码如下:
<script type="text/javascript">
Array.prototype.unique = function() {
var a = {};
var le
- UIWebView实现https双向认证请求
bewithme
UIWebViewhttpsObjective-C
什么是HTTPS双向认证我已在先前的博文 ASIHTTPRequest实现https双向认证请求
中有讲述,不理解的读者可以先复习一下。本文是用UIWebView来实现对需要客户端证书验证的服务请求,网上有些文章中有涉及到此内容,但都只言片语,没有讲完全,更没有完整的代码,让人困扰不已。但是此知
- NoSQL数据库之Redis数据库管理(Redis高级应用之事务处理、持久化操作、pub_sub、虚拟内存)
bijian1013
redis数据库NoSQL
3.事务处理
Redis对事务的支持目前不比较简单。Redis只能保证一个client发起的事务中的命令可以连续的执行,而中间不会插入其他client的命令。当一个client在一个连接中发出multi命令时,这个连接会进入一个事务上下文,该连接后续的命令不会立即执行,而是先放到一个队列中,当执行exec命令时,redis会顺序的执行队列中
- 各数据库分页sql备忘
bingyingao
oraclesql分页
ORACLE
下面这个效率很低
SELECT * FROM ( SELECT A.*, ROWNUM RN FROM (SELECT * FROM IPAY_RCD_FS_RETURN order by id desc) A ) WHERE RN <20;
下面这个效率很高
SELECT A.*, ROWNUM RN FROM (SELECT * FROM IPAY_RCD_
- 【Scala七】Scala核心一:函数
bit1129
scala
1. 如果函数体只有一行代码,则可以不用写{},比如
def print(x: Int) = println(x)
一行上的多条语句用分号隔开,则只有第一句属于方法体,例如
def printWithValue(x: Int) : String= println(x); "ABC"
上面的代码报错,因为,printWithValue的方法
- 了解GHC的factorial编译过程
bookjovi
haskell
GHC相对其他主流语言的编译器或解释器还是比较复杂的,一部分原因是haskell本身的设计就不易于实现compiler,如lazy特性,static typed,类型推导等。
关于GHC的内部实现有篇文章说的挺好,这里,文中在RTS一节中详细说了haskell的concurrent实现,里面提到了green thread,如果熟悉Go语言的话就会发现,ghc的concurrent实现和Go有点类
- Java-Collections Framework学习与总结-LinkedHashMap
BrokenDreams
LinkedHashMap
前面总结了java.util.HashMap,了解了其内部由散列表实现,每个桶内是一个单向链表。那有没有双向链表的实现呢?双向链表的实现会具备什么特性呢?来看一下HashMap的一个子类——java.util.LinkedHashMap。
- 读《研磨设计模式》-代码笔记-抽象工厂模式-Abstract Factory
bylijinnan
abstract
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
package design.pattern;
/*
* Abstract Factory Pattern
* 抽象工厂模式的目的是:
* 通过在抽象工厂里面定义一组产品接口,方便地切换“产品簇”
* 这些接口是相关或者相依赖的
- 压暗面部高光
cherishLC
PS
方法一、压暗高光&重新着色
当皮肤很油又使用闪光灯时,很容易在面部形成高光区域。
下面讲一下我今天处理高光区域的心得:
皮肤可以分为纹理和色彩两个属性。其中纹理主要由亮度通道(Lab模式的L通道)决定,色彩则由a、b通道确定。
处理思路为在保持高光区域纹理的情况下,对高光区域着色。具体步骤为:降低高光区域的整体的亮度,再进行着色。
如果想简化步骤,可以只进行着色(参看下面的步骤1
- Java VisualVM监控远程JVM
crabdave
visualvm
Java VisualVM监控远程JVM
JDK1.6开始自带的VisualVM就是不错的监控工具.
这个工具就在JAVA_HOME\bin\目录下的jvisualvm.exe, 双击这个文件就能看到界面
通过JMX连接远程机器, 需要经过下面的配置:
1. 修改远程机器JDK配置文件 (我这里远程机器是linux).
 
- Saiku去掉登录模块
daizj
saiku登录olapBI
1、修改applicationContext-saiku-webapp.xml
<security:intercept-url pattern="/rest/**" access="IS_AUTHENTICATED_ANONYMOUSLY" />
<security:intercept-url pattern=&qu
- 浅析 Flex中的Focus
dsjt
htmlFlexFlash
关键字:focus、 setFocus、 IFocusManager、KeyboardEvent
焦点、设置焦点、获得焦点、键盘事件
一、无焦点的困扰——组件监听不到键盘事件
原因:只有获得焦点的组件(确切说是InteractiveObject)才能监听到键盘事件的目标阶段;键盘事件(flash.events.KeyboardEvent)参与冒泡阶段,所以焦点组件的父项(以及它爸
- Yii全局函数使用
dcj3sjt126com
yii
由于YII致力于完美的整合第三方库,它并没有定义任何全局函数。yii中的每一个应用都需要全类别和对象范围。例如,Yii::app()->user;Yii::app()->params['name'];等等。我们可以自行设定全局函数,使得代码看起来更加简洁易用。(原文地址)
我们可以保存在globals.php在protected目录下。然后,在入口脚本index.php的,我们包括在
- 设计模式之单例模式二(解决无序写入的问题)
come_for_dream
单例模式volatile乱序执行双重检验锁
在上篇文章中我们使用了双重检验锁的方式避免懒汉式单例模式下由于多线程造成的实例被多次创建的问题,但是因为由于JVM为了使得处理器内部的运算单元能充分利用,处理器可能会对输入代码进行乱序执行(Out Of Order Execute)优化,处理器会在计算之后将乱序执行的结果进行重组,保证该
- 程序员从初级到高级的蜕变
gcq511120594
框架工作PHPandroidhtml5
软件开发是一个奇怪的行业,市场远远供不应求。这是一个已经存在多年的问题,而且随着时间的流逝,愈演愈烈。
我们严重缺乏能够满足需求的人才。这个行业相当年轻。大多数软件项目是失败的。几乎所有的项目都会超出预算。我们解决问题的最佳指导方针可以归结为——“用一些通用方法去解决问题,当然这些方法常常不管用,于是,唯一能做的就是不断地尝试,逐个看看是否奏效”。
现在我们把淫浸代码时间超过3年的开发人员称为
- Reverse Linked List
hcx2013
list
Reverse a singly linked list.
/**
* Definition for singly-linked list.
* public class ListNode {
* int val;
* ListNode next;
* ListNode(int x) { val = x; }
* }
*/
p
- Spring4.1新特性——数据库集成测试
jinnianshilongnian
spring 4.1
目录
Spring4.1新特性——综述
Spring4.1新特性——Spring核心部分及其他
Spring4.1新特性——Spring缓存框架增强
Spring4.1新特性——异步调用和事件机制的异常处理
Spring4.1新特性——数据库集成测试脚本初始化
Spring4.1新特性——Spring MVC增强
Spring4.1新特性——页面自动化测试框架Spring MVC T
- C# Ajax上传图片同时生成微缩图(附Demo)
liyonghui160com
1.Ajax无刷新上传图片,详情请阅我的这篇文章。(jquery + c# ashx)
2.C#位图处理 System.Drawing。
3.最新demo支持IE7,IE8,Fir
- Java list三种遍历方法性能比较
pda158
java
从c/c++语言转向java开发,学习java语言list遍历的三种方法,顺便测试各种遍历方法的性能,测试方法为在ArrayList中插入1千万条记录,然后遍历ArrayList,发现了一个奇怪的现象,测试代码例如以下:
package com.hisense.tiger.list;
import java.util.ArrayList;
import java.util.Iterator;
- 300个涵盖IT各方面的免费资源(上)——商业与市场篇
shoothao
seo商业与市场IT资源免费资源
A.网站模板+logo+服务器主机+发票生成
HTML5 UP:响应式的HTML5和CSS3网站模板。
Bootswatch:免费的Bootstrap主题。
Templated:收集了845个免费的CSS和HTML5网站模板。
Wordpress.org|Wordpress.com:可免费创建你的新网站。
Strikingly:关注领域中免费无限的移动优
- localStorage、sessionStorage
uule
localStorage
W3School 例子
HTML5 提供了两种在客户端存储数据的新方法:
localStorage - 没有时间限制的数据存储
sessionStorage - 针对一个 session 的数据存储
之前,这些都是由 cookie 完成的。但是 cookie 不适合大量数据的存储,因为它们由每个对服务器的请求来传递,这使得 cookie 速度很慢而且效率也不