Как использовать Lire Search с параметром для поиска изображений

Я инициализирую свою библиотеку лир с изображениями, каждое изображение имеет собственный image_id и group_id. То, что я хочу, это искать с некоторыми неизвестными изображениями в этой библиотеке, т.е. я вызываю функцию поиска lire для отправки изображения и group_id, чтобы получить только одно и то же изображение с этим group_id в библиотеке (это могут быть одни и те же изображения, но с другим group_id, также имеют разные image_id, этот image_id для меня важно, как ключ в моей БД, чтобы найти дополнительную информацию).

Можно искать просто без group_id, чтобы получить все изображения из всех групп, а затем отфильтровать результаты с помощью group_id в моей функции. Но я хочу знать, возможно ли это сделать со стороны лиры.

Вот мой код C# для поиска изображений из библиотеки лиры:

public List<LDoc> Search(Bitmap image, string group_id)
{
  System.IO.MemoryStream ms = new System.IO.MemoryStream();
  image.Save(ms, ImageFormat.Bmp);
  byte[] byteImage = ms.ToArray();
  String imageBase64String = Convert.ToBase64String(byteImage);
  List<LDoc> docs = null;
  string m = null;

  string requestHandler = "/lireq";
  Dictionary<string, string> dict = new Dictionary<string, string>
  {
    { "fl", "*" },
    { "ms", "false" },
    { "field", "cl" },   //lire search signature
    { "accuracy", "0.85" },
    { "candidates", "1000" },
    { "image", "image" }, //lire search entry
    { "rows", "10" },
    { "wt", "json" }
  };

  var bytes = Encoding.UTF8.GetBytes(imageBase64String);
  using (var content = new System.IO.MemoryStream(bytes))
  {
    m = _connection.PostStream(requestHandler, "text/xml; charset=utf-8", content, dict);
  }
  docs = Newtonsoft.Json.JsonConvert.DeserializeObject<LStruct7>(m).Response.Docs;
  return docs;
}

Пожалуйста, дайте мне знать, как определить условия с моим group_id, чтобы получать только изображения из группы. Большое спасибо!

С уважением, Иван

0 ответов

Другие вопросы по тегам