技术标签: 算法 C++ C J# 算法 人工智能 ITeye
import java.awt.image.BufferedImage;
import java.io.File;
import javax.imageio.ImageIO;
public class ImageDemo {
public static String parse(BufferedImage img){
int width = img.getWidth();
int height = img.getHeight();
StringBuilder sb = new StringBuilder();
for (int j = 0; j < height; j++) {
for (int i = 0; i < width; i++) {
int RGB = img.getRGB(i, j);
int red = (RGB >> 16) & 0xff;
if (red < 100) {
sb.append("1");
} else {
sb.append("0");
}
}
}
String s = sb.toString();
String s2 = s;
// System.out.println("图片的String码: " + s);
// System.out.println("--------------");
// for (int i = 0; i < height; i++) {
// System.out.println(s2.substring(0, width));
// s2 = s2.substring(width);
// }
return s;
}
public static void calResult(String s){
if(s.indexOf(n0)>=0){
System.out.print(" 0");
}else if(s.indexOf(n1)>=0){
System.out.print(" 1");
}else if(s.indexOf(n2)>=0){
System.out.print(" 2");
}else if(s.indexOf(n3)>=0){
System.out.print(" 3");
}else if(s.indexOf(n4)>=0){
System.out.print(" 4");
}else if(s.indexOf(n5)>=0){
System.out.print(" 5");
}else if(s.indexOf(n6)>=0){
System.out.print(" 6");
}else if(s.indexOf(n7)>=0){
System.out.print(" 7");
}else if(s.indexOf(n8)>=0){
System.out.print(" 8");
}else if(s.indexOf(n9)>=0){
System.out.print(" 9");
}
}
public static void main(String[] args) throws Exception {
//File file = new File("c:/image/num/nn" + n + ".jpg");
File file = new File("c:/image/image1.jpg");
BufferedImage imgOrg = ImageIO.read(file);
BufferedImage img = imgOrg.getSubimage(8, 0, 10, 20);
BufferedImage img2 = imgOrg.getSubimage(20, 0, 10, 20);
BufferedImage img3 = imgOrg.getSubimage(35, 0, 10, 20);
BufferedImage img4 = imgOrg.getSubimage(45, 0, 10, 20);
System.out.println("图片解析结果:");
String s = parse(img);
calResult(s);
String s2 = parse(img2);
calResult(s2);
String s3 = parse(img3);
calResult(s3);
String s4 = parse(img4);
calResult(s4);
}
private static String n0 = "000000000000011110000011111100011100111001100001100110000110011000011001100001100110000110011000011001100001100111001110001111110000011110000000000000";
private static String n1 = "000000000000000110000000111000000111100000110110000010011000000001100000000110000000011000000001100000000110000000011000000001100000000110000000000000";
private static String n2 = "000000000000011110000011111100011100111001100001100000000110000000011000000011000000011000000011000000011000000011000000011111111001111111100000000000";
private static String n3 = "000000000000011100000011111000011000110000000011000000001100000011100000001111000000000110000000011001100001100110000110001111110000011110000000000000";
private static String n4 = "000000000000000110000000111000000011100000011110000011011000001101100001100110001100011000111111111011111111100000011000000001100000000110000000000000";
private static String n5 = "000000000000111111000011111100001100000001100000000110111000011111110001100001100000000110000000011001100001100110000110001111110000011110000000000000";
private static String n6 = "000000000000011110000011111100001100011001100000000110000000011011100001111111000111000110011000011001100001100011000110001111110000011110000000000000";
private static String n7 = "000000000001111111100111111110000000010000000011000000011000000001100000001100000000110000000011000000001100000001100000000110000000011000000000000000";
private static String n8 = "000000000000011110000011111100011000011001100001100110000110001111110000111111000110000110011000011001100001100110000110001111110000011110000000000000";
private static String n9 = "000000000000011110000011111100011000011001100001100110000110011000111000111111100001110110000000011000000001100110001100001111110000011110000000000000";
private static String n = "9";
}
前言正文自我介绍数据结构和算法Java篇Java EE知识点储备计算机网络操作系统数据库相关XML常识性知识总结前言准备了接近两个月的面试笔试,现在终于是可以休息下了。真真是应了那句老话“台上一分钟, 台下十年功。”。人嘛,越努力,才会越幸运。机会总是留给有准备的人的。下面分享一下我的Java实习生准备所看过的材料,(虽然至今还有些依然看不懂地方。) 希望对这方面的同学有点帮助。正文自我介绍先针对...
一、axios的基本特性axios (官网: https://qithub.com/axios/axios)是一个基于Promise用于浏览器和node.js的HTTP客户端。它具有以下特征:①支持浏览器和node.js②支持promise③能拦截请求和响应④自动转换JSON数据二、axios的基本用法axios.请求的方式( '请求地址' ).then (res=>{//data属性名称是固定的,用于获取后台响应的数据console.log(res.d...
Description: 已知一个长度为nnn的整数数列a[1],a[2],…,a[n]a[1],a[2],…,a[n]a[1],a[2],…,a[n],给定查询参数l、rl、rl、r,问在 [l,r][l,r][l,r]区间内,有多少连续子 序列满足异或和等于kkk。 也就是说,对于所有的x,y(l≤x≤y≤r)x,y(l≤x≤y≤r)x,y (l≤x≤y≤r),能够满足a[x]a[x]a...
Windows Sockets Error Codes
【问题】折腾:时,试了试下面代码:public static ArrayList getXmlItems(InputStream inputStream, String tag){ArrayList xmlItemList = new ArrayList();DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();...
MySQL社区版下载及安装教程1、下载此教程演示为MySQL8社区版压缩包版本的,点击以下链接进入下载页面(需要Oracle账号,没有的可先进行注册)MySQL下载链接完成后,我们就得到一个压缩包,把这个压缩包进行解压(这里我演示是并不是最新版)2、配置环境变量// 变量值为MYSQL根目录变量名:MYSQL_HOME变量值:~\mysql-8.0.xx-winx64 //(这...
[cpp] view plaincopy"code" class="cpp">/* 中颖EEPROM,使用比较方便,但有个注意点,就是每次无论你写入 什么数据或者在哪个地址写数据,都需要将对 对应的块擦除,擦 除后才能写入成功。 */ #define SSPWriteFlag 0x5A #define
using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.IO;using System.Linq;using System.Net;using System.Text;using System.Threa...
public class Demo{ public static void main(String args[]){ /** *Math.sqrt()//计算平方根 *Math.cbrt()//计算立方根 *Math.pow(a, b)//计算a的b次方 *Math.max( , );//计算最...
1. 前言前面几个章节主要解析了 Netty 的编码、解码问题,那么是否有了编解码器,我们的 Netty 通信就能正常了呢?TCP 协议在传输数据时没有办法判断数据是什么时候结束的,它无法识别一段完整的信息,因此可能会导致接受到的数据和发送时的数据不一致的情况。因此需要人为的指定一种规范的协议,从而保证数据的安全性,比如:我们所熟悉的 HTTP 协议。本节内容,我们主要需要以下两点知识TCP 拆包、粘包的原因; TCP 拆包、粘包的解决方案。2. 学习目的拆包、粘包在 TCP 协
泰勒公式,雅可比矩阵,海塞矩阵,牛顿法泰勒公式,雅可比矩阵,海塞矩阵,牛顿法泰勒公式是一个在函数上取某点的近似值,如果函数足够平滑的话,在已知函数在某一点的各阶导数值的情况之下,泰勒公式可以用这些导数值做系数构建一个多项式来近似函数在这一点的近似值。泰勒公式还给出了这个多项式和实际的函数值之间的偏差泰勒公式是将一个在x=x0处具有n阶导数的函数f(x)利用关于(x-x0)的n次多项式来逼近函数的方...
ListView的下拉刷新逻辑:一、获取ListView的头布局的高度并通过给头布局setPading方法,将头布局隐藏二、重写ListView的onTouchEvent方法计算出滑动的偏移量dy三、通过比较偏移量和头布局的高度,进行UI的修改ListView上拉加载逻辑:一、获取ListView的脚布局的高度并通过setPading方法,将头布局隐藏二、调用ListVie