机器视觉之家VISIONHOME微信公众号:石鑫华视觉网

 找回密码
 注册会员
查看: 56|回复: 0

[收费] LabVIEW中使用LabSQ向ACCESS数据库中插入图片

[复制链接]

主题

好友

12万

积分

超级版主

  • TA的每日心情
    无聊
    1 小时前
  • 签到天数: 1171 天

    [LV.10]100FPS

    发表于 2018-4-9 18:10:50 |显示全部楼层
    LabVIEW中使用LabSQ向ACCESS数据库中插入图片) I$ T( i, k, Y4 D
    做机器视觉图像处理,经常会遇到图像、图片的情况。同时也经常会遇到使用数据库的情况。当这两种情况都出现时,就会有客户要求,将图像也写入到数据库中。那么我们如何来实现这个过程呢?这里可以考虑两种方法。7 ~- N! X, m' Y( K" @! I
    方法1、将图片保存为到本地或网络服务器中,获取该图片的路径,将路径保存到数据库中。这种方法是多数编程工程师推荐的方法。因为这样,数据库可以做的很小。而且路径也有一定的通用性。在Access/MYSQL/MS SQL等多个环境中,都可以正常使用(本质是上写入字符串)。但是这种方式的话,比较依赖于图片的路径,如果图片文件路径有改变,那么则原始保存的路径将无效而找不到图像。如果是批量修改了图片服务器、或文件夹,那么倒是可以使用Updata语句直接修改数据库中的路径即可。但是如果是文件夹中的某些图片路径变了,或者是名称修改了。那么就只能逐个的修改,比较麻烦。% i0 V0 ~* `; l1 N
    方法2、将图片转换为其它的数据方式,存入到数据库中。在MS SQL等大型数据库中,可以将图像转换为二进制方式写入。在Access中,不支持二进制方式,只能考虑使用字符串方式。本例子,则是介绍的是在Access中写入字符串图片的方式。

    # ?. H" a1 K6 Y9 n3 G8 a2 f, dACEESS数据库中写入图片并读取图片5 \9 ^$ y: |$ h3 g/ b

    3 p: A0 e) k( j6 f9 rAccess数据库中的图像信息
    3 Q4 r/ W/ h. S4 j4 I5 @6 x
    本例子是将图像转换为二维数组(需要VDM),再使用数组至电子表格字符串函数将其转换为字符串,然后写入到数据库中。读取则使用了写入的逆过程,先读取电子表格字符串,然后使用电子表格字符串至数组函数,将其转换为二维数组,之后再使用二维数组到图像函数(需要VDM)。当然,因为保存的是字符串,这里可以有多个方式来实现,转换为二维数组只是其中的一种。另外还可以使用平化字符串等方式。本例子使用的是第三方的免费SQL工具包LabSQL,并没有使用NI官方的Database Toolkit工具包。
    ' n  U1 j: ?& f1 ~8 t不过需要注意的是,本人验证,这里只能写入非常小的图像,稍微大一点的数据,因为转换为字符串后很长的串了,则无法写入,如640*480的8位灰度图像,都无法正常写入。
    - B+ b: j. g* w' {所以写入图像内容到数据库中,个人是不建议这种方式的。当然,各位也可以再尝试其它方法,看能不能写入大文件。
    ! a2 ~1 ?+ z' C! w1 H! R

    2 @# _9 J- @3 K; h2 s6 _) P附件下载:LabVIEW2017SP1版&LabSQL&VDM2017SP1) q+ \0 F* C9 H* Y1 U
    9 _0 b5 N- T9 ?

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有帐号?注册会员

    x
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册会员

    本版积分规则

    淘宝机器视觉商城

    Archiver|手机版|小黑屋|视觉之家|东莞市华动智能科技有限公司 ( 粤ICP备17078359号-1 )|网站地图|申请友情链接

    GMT+8, 2018-4-22 16:32

    Powered by shixinhua.com X3.2 Licensed

    © 2012-2018 VISIONHOME.CN 浏览量:

    快速回复 返回顶部 返回列表