Система быстрой обтравки фотографий

Технология Freemask разработана компанией Hensel для профессиональной фотосъёмки. Суть проста — каждый объект снимается в студии два раза. Для первого снимка включается основная подсветка предметного стола. Для второго — только яркая фоновая подсветка. Дополнительный кадр превращается в маску, по ней объект съёмки быстро и качественно отделяется от фона.

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

Видеообзор проекта

Принцип съёмки

Для фотографирования предметов по технологии Freemask вам понадобится фотоаппарат со штативом и минимум две фотовспышки. Мы рекомендуем использовать белый задний фон и прозрачный предметный стол.

Первая вспышка или группа вспышек используется для организации освещения снимаемого объекта. Вторая — для контрастной заливки фона.

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

Устройство синхронизатора

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

Что понадобится

Как собрать

Собери синхронизатор, как показано на схеме. Подключи сигнальные провода к синхроразъёмам вспышек и фотоаппарата.

Исходный код

Прошей Iskra Mini скетчем

gidroponic.ino
int ledPin1 = 13;
int ledPin2 = 12;
int switchPin = 7;
 
int val;
 
int state;
int c;
 
#define TIME 2000
unsigned long int time;
 
void setup()
{
  pinMode(ledPin1, OUTPUT);
  pinMode(ledPin2, OUTPUT);
  pinMode(switchPin, INPUT_PULLUP);
  digitalWrite(ledPin1, LOW);
  digitalWrite(ledPin2, LOW);
}
 
void loop()
{
  state = digitalRead(switchPin);
 
  if (state == LOW && c == 0) // нажали кнопку
  {
    c = 1;
    val = ++val;
    if (val == 3)
    {
      val = 0;
    }
     time = millis();
  }
  if (state == HIGH && c == 1) // отпустили кнопку
  {
 
    c = 0;
  }
 
  if (val == 0) // выключаем светодиоды
  {
    digitalWrite(ledPin1, LOW);
    digitalWrite(ledPin2, LOW);
  }
  if (val == 1) // Если мы кнопку 1 раз нажали и отпустили
  {
    digitalWrite(ledPin1, HIGH);
    digitalWrite(ledPin2, LOW);
  }
  if (val == 2) // Если мы кнопку 2 раз нажали и отпустили
  {
    digitalWrite(ledPin1, LOW);
    digitalWrite(ledPin2, HIGH);
    delay(500);
    digitalWrite(ledPin1, LOW);
    digitalWrite(ledPin2, LOW);
    val = 0;
    c = 0;
  }
  if (millis() - time > TIME)
  {
    if (val != 2)
    {
      val = 0;
    }
  }
 
  delay(10);
 
}

Обработка

После нехитрых манипуляций с фотографиями, можно получить идеально вытравленный с фона предмет.

Для этих манипуляций можно использовать специализированное программное обеспечение, например Mask Integrator от Picture Instruments, или использовать привычный Photoshop.

Алгоритм ручной обработки прост:

  1. В файле с силуэтом объекта оставьте только синий канал
  2. С помощью настройки уровней избавимся от полутонов и получим контрастный силуэт
  3. Получившееся изображение скопируем в буфер обмена
  4. Откроем файл с освещённым объектом
  5. Создаём пустую маску, кликаем на ней с зажатой клавишей ALT и вставляем в неё силуэт из буфера обмена
  6. Инвертируем маску и вырезаем объект

Если записать эти действия в экшн, обтравка фотографий сведётся к одному клику.

Что дальше

  • Если добавить в проект кнопку и ещё один Nano Switch, получится реализовать дистанционное управление затвором камеры.
  • Если совместить систему Freemask с проектом поворотного фотостола, получится стенд для автоматизированной предметной съёмки с нескольких точках или в 3D.