java,blob
<link rel="stylesheet" href="https://js.how234.com/third-party/SyntaxHighlighter/shCoreDefault.css" type="text/css" /><script type="text/javascript" src="https://js.how234.com/third-party/SyntaxHighlighter/shCore.js"></script><script type="text/javascript"> SyntaxHighlighter.all(); </script>
java blob是什么,让我们一起了解一下?
Blob是计算机视觉图像中的一块连通区域,Blob分析的就是对前景或背景分离后的二值图像,进行连通域提取和标记以及计算Blob的一些相关特征,而且通过Blob提取,还可以获得相关区域的信息。
Blob分析的重要一个步骤是连通区域的确定,那么它的优缺点是什么?
优点:
Blob在目标跟踪的优势有:
1、通过Blob提取,可以获得相关区域的信息,这些信息可以作为边缘监测器或者角点检测器的补充信息。在目标识别中,Blob可以提供局部的统计信息和外貌信息,这些信息能够为目标识别和跟踪提供依据。
2、可以利用Blob对直方图进行峰值检测。
3、Blob还可以作为纹理分析和纹理识别的基元。
4、通过Blob分析,可以得到目标的个数及其所在区域,在进行目标匹配时,不需要对全局图像进行搜索。
缺点:
1、速度过慢,要整个区域作逐点扫描。
2、Blob分析难度大。这是一纯几何学上的问题,一个不规则的形状,如何计算它的面积、大小没有简单易行的算法,太过复杂,运算时间就长,速度就更慢了。
3、实际应用。Blob算法在实际应用中,非常依赖光源。几乎可以说,Blob算法如果离开了一个可靠的光源设计,则完全不起作用。
那么java是怎样对Blob读写的?示例如下:
package com.you.sister; import java.io.BufferedInputStream;import java.io.BufferedOutputStream;import java.io.DataOutputStream;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.InputStream;import java.sql.Blob;import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.util.Properties; public class BlobTest { public static Connection conn;public static Connection getConn() throws Exception {FileInputStream fis = new FileInputStream(new File("jdbc.properties"));Properties prop = new Properties();prop.load(fis);String driver = prop.getProperty("jdbc.driver");String url = prop.getProperty("jdbc.url");String username = prop.getProperty("jdbc.username");String password = prop.getProperty("jdbc.password");Class.forName(driver);return DriverManager.getConnection(url, username, password);}public static void main(String[] args) throws Exception {conn = getConn();readBlob();writeBlob();conn.close();}/*** 从数据库中读大对象出来* 保存在本地*/public static void readBlob() {try {String readSql = "select * from emp where empno = ?";PreparedStatement ps = conn.prepareStatement(readSql);ps.setInt(1, 7369);ResultSet rs = ps.executeQuery();while (rs.next()) {Blob image = rs.getBlob("image");DataOutputStream dos = // 在FileOutputStream中指定文件输出路径new DataOutputStream(new FileOutputStream(7369 + "_image.jpeg"));InputStream fis = image.getBinaryStream();int out;byte[] outByte = new byte [100];// 将blob对象输入流写入本地输出流中while ((out = fis.read(outByte)) != -1) {dos.write(outByte);}fis.close();dos.flush();dos.close();}rs.close();ps.close();} catch (Exception e) {e.printStackTrace();}}/*** 将大对象文件保存进数据库中*/public static void writeBlob() {try {BufferedInputStream fis = new BufferedInputStream(new FileInputStream(new File("D:Tulips.jpg")));// 如果是新插入字段,则将大对象对应字段插入为empty_clob();// 如果是修改,则可以先update 该行数据,将大对象对应字段设置为empty_clob();String writeSql = "select * from emp where empno = ? for update";PreparedStatement ps = conn.prepareStatement(writeSql);ps.setInt(1, 7499);conn.setAutoCommit(false);ResultSet rs = ps.executeQuery();while (rs.next()) {oracle.sql.BLOB image = (oracle.sql.BLOB)rs.getBlob("image");BufferedOutputStream bos = new BufferedOutputStream(image.getBinaryOutputStream());int c;// 将实际文件中的内容以二进制的形式来输出到blob对象对应的输出流中while ((c = fis.read()) != -1) {bos.write(c);}fis.close();bos.close();}conn.commit();rs.close();ps.close();} catch (Exception e) {e.printStackTrace();}}}
-
qq怎么恢复被退出的群
21世纪是互联网信息时代,互联网聊天软件发挥重要信息沟通作用,一些我们不需要的聊天群会选择退出,也会由于不小心或者别的原因退出了qq群,那么退出的聊天群该怎么恢复呢?退出的qq群只有群主能进行恢复操作,管理员不能恢复,而且只能恢复被群主或管理员删除的群成员。而...
-
汽车均衡器怎么调音质好
1、首先打开播放器,播放一首歌,选择均衡器。2、就可以进行相应的设置,在选择自定义的时候。3、需要了解音乐均衡器的各个频段所增益的乐器及调节效果,20HZ-40HZ,在这一段中提升能够使音乐变得强而有力。4、40HZ-150HZ,是声音的基础部分,声音丰满柔和。...
-
苹果手机相册怎么上锁,苹果手机相册怎样上锁
1、在手机上下载腾讯手机管家APP,下载完毕点击打开。2、进入手机管家后,选择相册管理。3、点击加密相册并进入。4、第一次进入加密相册会要设置一个个人密码,或者用户可以通过指纹识别进入相册。5、输入密码后,密码如果正确,相册会自动打开。6、进入相册后,点击添加,...
-
黑色背景拍照窍门详解
1、调整拍摄角度,寻找背景:既然是拍摄黑背景,在拍摄前我们尽量选择深色的背景,这样也就更加容易达到效果。不过深色不一定要是纯黑色,只要颜色较为深沉,偏向暗色调的均可。拍摄前多多观察,寻找不同的拍摄角度,以找到有反差的深色作为背景。要多尝试不同的角度,直至主体...