如何将不同类型的图像存储到数据库中

时间:2012-05-24 05:08:48

标签: c# sql image-processing opencv

将彩色图像转换为黑白后,我想检测图像的形状是如何将不同类型的形状存储到数据库中

如何将每个检测到的形状存储在数据库中,因为图像无法存储到数据库中 以及如何将图像数据存储到数据库

2 个答案:

答案 0 :(得分:1)

将图片保存到数据库中并不是很困难,可以轻松搜索

这个解决方案对我很有用(对于mysql db和png图像):

MySQLConnection sqlcon;

void savePic(Image pic)
{
  using (MemoryStream ms = new MemoryStream())
  {
    pic.Save(ms, System.Drawing.Imaging.ImageFormat.Png);
    using (MySqlDataAdapter a = new MySqlDataAdapter())
    {
      a.InsertCommand = new MySqlCommand("insert into images(picture) values (@pic)", sqlcon);
      a.InsertCommand.Parameters.Add(new MySqlParameter("@pic", (object)ms.ToArray()));
      a.InsertCommand.ExecuteNonQuery();
    }
  }
}
db中的

picture列是类型longblob

答案 1 :(得分:-2)

您需要通过位图表示图像。你可以在

检查位图

http://en.wikipedia.org/wiki/Bitmap