Можем ли мы тренировать тензор потока js, чтобы получить определенную часть изображения? - PullRequest
0 голосов
/ 25 февраля 2020

Мой клиент требует, чтобы пользователь загружал изображение, используя это изображение. Мне нужно обрезать некоторую часть изображения, чтобы сначала я использовал tesseract. js модуль узла, но он не работал, поэтому я переехал to tenorflow. js для создания собственной модели и обучения кадрированию определенной части изображений. Я хочу обрезать ниже подписи часть изображения и фото. Таким образом, используя обнаружение объекта тензорного потока, мы можем обнаружить сигнатуру и получить координаты x и y для обрезки изображений.

Image to crop

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

const sharp = require("sharp");
sharp("./pancard.jpg")
  .resize(500, 300, {
    fit: sharp.fit.fill
  })
  .toFile("./pancard_new.jpg", (err, info) => {
    sharp("./pancard_new.jpg")
      .extract({ left: 35, top: 220, width: 180, height: 28 })
      .toFile("./pancard_new2.jpg", function(err) {});
  });

1 Ответ

3 голосов
/ 25 февраля 2020

Вам понадобится много обучающих данных, если вы хотите обучить модели машинного обучения - возможно, тысячи примеров карточек, на которых люди помечены областями, которые вы хотите обнаружить и пометить. Затем вы можете обучить что-то вроде модели сегментации, чтобы извлечь необработанные пиксели, которые соответствуют этим классам, или многоблочный классификатор, который может дать вам ограничивающий прямоугольник (но может не очень хорошо работать с вещами под углами).

Самый простой способ обучить свой собственный и вывод в TensorFlow. * Формат 1009 * - это попробовать Cloud Auto ML Vision, который экспортирует построенные модели в TensorFlow. js. См. Это руководство по обнаружению объектов, которое возвращает вам ограничивающие рамки: https://cloud.google.com/vision/automl/object-detection/docs/tensorflow-js-tutorial, а затем щелкните вкладку кода Node.js этого руководства, чтобы узнать, как использовать JavaScript на стороне сервера вместо Python.

Однако, как уже упоминали другие, может быть легче выяснить, как узнать, где находится карта, выпрямить ее и обрезать, так как это может быть просто проблемой компьютерного зрения по сравнению с машиной. учиться один.

...