检测存储在数据库中的图像的颜色

时间:2014-10-06 21:18:50

标签: sql-server mongodb image db2 database

所以我想做的是将图像存储在数据库中,而不是存储在文件系统中。存储后,我想检测图像是彩色还是黑色&白色,将图像裁剪为我稍后指定的尺寸等等。

此外,我不想通过Java,C#或PhP等上层应用程序完成图像处理,因为我的数据库可以在不使用任何上层应用程序的情况下间接访问。

为了存储图像,我检查了以下DBMS:

  1. Oracle多媒体(以前称为Intermedia)但无法真正找到图像处理文档,而且安装不同模块也相当混乱。
  2. IBM DB2,即使已经停止使用图像扩展器,我找到了一个合适的第三方图像处理库ImageMagick。从我读过的内容来看,这是最适合我的要求的扩展数据库,但我对它的实用性有点怀疑(http://www.ibm.com/developerworks/data/library/techarticle/dm-0504stolze/< - 这是2005年写的)
  3. 使用Filestream的SQL服务器,我可以将图像存储为BLOB,但我再次不确定如何满足我的要求。
  4. 带有GridFS的MongoDB,这也有助于存储图像,但不能完全操作。
  5. 我现在迷路了,需要一个我可以继续前进的方向,这样我就不会再选择合适的数据库了。任何替代DBMS或方法来做我想要的事情都非常受欢迎。

1 个答案:

答案 0 :(得分:1)

在软件世界(并且不仅仅是那里),人们正在制造做一件事的事情,但是他们试图以这样的方式做到这一点,这一件事将完美地完成。创建一个不仅存储信息的数据库,而且还是图像编辑器,视频剪辑增强器和文本阅读器,这没有多大意义。

最好将它作为一个数据库,如果需要的话,为每个任务创建3个其他程序。

因此,您将找不到满足您要求的数据库,如果您愿意,可以在数据库中存储图像,然后计算颜色,在应用层上调整它们的大小。如果您需要经常这样做 - 然后将它们存储在数据库中,预先计算并预先确定您需要的东西并将它们存储在数据库中。然后根据预先计算的值进行查询。