[转]:手写数字识别系统之数字提取

引言所谓数字分割就是指将经过二值化后的图像中的单个数字区域进行提取的过程。数字分割在数字识别中是一个必不可少的关键步骤,只有能够将数字进行准确的提取,才能将其一一识别。数字分割的方法数字分割的方法相当多,主要有以下几种:基于直方图的分割此类方法就是对每行和每列黑色像素数进行统计,生成行直方图和列直方图,并采用某种阈值选取法分别对图像进行行列分割。这种方法简单快速,对于按矩阵

用 GitLab CI 进行持续集成

简介从 GitLab 8.0 开始,GitLab CI 就已经集成在 GitLab 中,我们只要在项目中添加一个 .gitlab-ci.yml 文件,然后添加一个 Runner,即可进行持续集成。 而且随着 GitLab 的升级,GitLab CI 变得越来越强大,本文将介绍如何使用 GitLab CI 进行持续集成。一些概念在介绍 GitLab CI 之前,我们先看看一些

UFLDL 学习笔记

前言最近开始看Andrew Ng 大牛的深度学习教程,算是作为对自己的一个激励,也作为日后回顾的办法,开始记录学习笔记,每一章节分别对应,所有章节写在这一片文章里便于查询。所以我会不断更新滴~线性回归本章大致讲解了线性分类器的原理(他假设我们已经有这些基础了,只是作为复习梯度下降的一个办法,其实能看这些教程的都应该有机器学习的基础知识,所以有好多基础知识我就直接省略不写啦)

AVL平衡二叉树详解与实现

本文从属于笔者的数据结构与算法系列文章。AVL:完全平衡的二叉查找树二叉查找树可以表示动态的数据集合,对于给定的数据集合,在建立一颗二叉查找树时,二叉查找树的结构形态与关键字的插入顺序有关。如果全部或者部分地按照关键字的递增或者递减顺序插入二叉查找树的结点,则所建立的二叉查找树全部或者在局部形成退化的单分支结构。在最坏的情况下,二叉查找树可能完全偏斜,高度为n,其平均与最坏

Eliir Ecto: 复合(多列)唯一约束的Changeset校验

我们有这么一张表的迁移脚本 20160718132517_create_vehicle_change_owner_table.exs 描述了机动车过户的记录defmodule ElectricProto.Repo.Migrations.CreateVehicleChangeOwnerTable douse Ecto.Migrationdef up docreate tabl

Laravel学习笔记之Demo2——用Aja来做个ToDoList

引言本文基于Laravel框架做的一个URL生成和存储demo,主要目的是学习使用Laravel框架。内容基于英文书籍《Packt.Laravel.Application.Development.Blueprints》第二章节,似乎没有中文版。书籍基于Laravel4的,学习时使用Laravel5.2框架开发。开发环境:Laravel5.2+MAMP+PHP7+MySQL5

Eliir Ecto: 在Postgresql中插入二进制数据

本文以用一个在数据库中保存图片信息为例, 展示如何向 Postgresql 中插入二进制数据.首先我们要知道 Postgresql 中唯一一种二进制数据的类型为 bytea, 表示字节数组或字节序列. 对应于Oracle和MySQL中的 blob.下面是一个示例defmodule Bytea.Model.Test doimport Ecto.Changesetuse Ect

Node.js-2.模块

一、Node.js模块每一个Node.js都是一个Node.js模块,包括JavaScript文件(.js)、JSON文本文件(.json)和二进制模块文件(.node)。1. 模块的使用编写一个模块:在虚拟机桌面新建一个文件mymodule.js,输入如下代码并保存:function hello() {    console.log('Hello');}function

[转]:手写数字识别系统之图像分割

背景本文,主要介绍我之前在学校时候,研究的一些跟手写数字识别相关的技术心得,主要涉及:数字图像处理、特征提取、神经网络等等相关的一些技术。。虽然很多用到的还是网上现有的比较成熟的算法,但是在这些基础上,我还是有做了不少算法上的改进的。。并且为了写这个项目,我当时还特地写了一整套神经网络库,从图像处理开始到最后的识别过程,没有使用任何第三方库,都是从0还是写起也没有用到ope

Node.js介绍

一. 概述Node.js是基于Chrome JavaScript运行时建立的一个平台,实际上它是对Google Chrome V8引擎进行了封装,它主要用于创建快速的、可扩展的网络应用。Node.js采用事件驱动和非阻塞I/O模型,使其变得轻量和高效,非常适合构建运行在分布式设备的数据密集型的实时应用。运行于浏览器的JavaScript,浏览器就是JavaScript代码的

R可视化:iris数据探索

前言Kaggle数据挖掘竞赛里有一个经典的探索性分析例子,对iris数据集进行了各种形式的可视化,帮助人通过直观的图形更深地理解特征与label的关系。Kaggle官网给出了Python版本的实现,链接如下:https://www.kaggle.com/benham...本文用R对该notebook的代码进行重现。代码library(tidyr)library(dplyr)

ECMAScript6

简介ES6目标,让JavaScript变成一个企业级的开发语言,不仅仅限制与前端页面的脚本语言。编译服务端使用 babel 编译构建工具fis使用插件:fis-parser-babel2 编译ES6fis.match(' .ts', { parser: fis.plugin('babel2'), rExt: '.js'});TypeScript与babel编译有

基于float的几种布局

在这里介绍基于float的几种布局.1.浮动与两侧自适应的布局如图所示,左边没有限定宽度,右边宽度自适应。使用table-cell实现的布局,可以适用于两栏的布局。HTML代码与浮动与两侧自适应的布局改变DOM树先后顺序的方法HTML代码浮动与右侧尺寸固定的流体布局与右侧尺寸固定的浮动布局与右侧尺寸固定的浮动布局与右侧尺寸固定的浮动布局与右侧尺寸固定的浮动布局与右侧尺寸固定

words abbreviation

题目:在一个字典里有一堆英文单词,现在要把这些单词缩写成(前缀 + 字符串长度 + 尾字母)的形式,而且现在有两个限制条件:(1)要求缩写后的字符串可以唯一表示原单词;(2)有相同长度的单词在缩写后放在一起。分析:(1)trie树的大多数功能可以用HashTable来替代,但是prefix功能是HashTable不好做到的。由于最终的缩写需要考虑前缀,所以选择trie这种数

avalon2组件的相关概念详解

[TOC]avalon拥有两大利器,强大的组件化功能以应对复杂墙问题,顶级的虚拟DOM机制来解决性能墙问题。组件可谓是指令的集合,但1+1 > 2!组件容器组件容器是一个占位用的元素节点. 当avalon扫描到此位置上时将它替换成组件.在avalon2中有4类标签可以用作组件容器,分别是wbr, xmp, template, 及ms-开头的自定义标签.其兼容性如下元素类

React-Redu性能优化

前面写了两篇文章《React组件性能优化》《Redux性能优化》,分别针对React和Redux在使用上的性能优化给了一些建议。但是React和Redux一起使用还需要一个工具React-Redux,这一篇就说一下React-Redux在使用上的一些性能优化建议。React-Redux是官方的React和Redux链接工具Provider一个很简单的React组件,它主要的

系统设计有用链接

大数据处理: http://blog.163.com/xychenbai... http://taop.marchtea.com/09.0... system design: http://www.hiredintech.com/sy... 关键字:interview, design, system, 大数据

ECMAScript 5.1 实用特性概览

ECMAScript 5发布于2009年12月。ECMAscript 5.1版(下文称ES5)发布于2011年6月,,并且成为ISO国际标准(ISO/IEC 16262:2011)http://www.ecma-international...ECMAScript 5.1 是ECMAScript(基于JavaScript的规范)标准最新修正。 与HTML5规范进程本质类似,

[微信音频播放器] html5 audio 制作的微信播放器

weixinAudio.js 一个简单的微信样式播放器 播放器DOM及CSS是微信里内置的音频播放器的样式,重新创建了控制层js,方便在在公众号,APP等场景使用。 例子 demo 地址 github 如何使用 通过以下demo来实现 HTML模板3:07标题来源 Js调用 //你需要先引入一个jQuery $('.weixinAudo').weixinAudio(opti