Программа для выжигания/сверления изображения StippleGen

Аватара пользователя
Алексс
Почётный участник
Почётный участник
Сообщения: 2210
Зарегистрирован: 20 июл 2012, 15:49
Репутация: 266
Заслуга: IQ32
Настоящее имя: Алексей
Откуда: Прага
Контактная информация:

Программа для выжигания/сверления изображения StippleGen

Сообщение Алексс »

по мотивам темы в eggbot набрел на чудеснейшую програмку StippleGen

рождает весьма и весьма оптимальные картины.
исходники на java (pde). можно чтонить подкрутить. первое что приходит на ум - распараллелить процесс вычисления на несколько ядер.
ну и подвисает иногда :)

тема для очумелых програмистов :geek:
Каждая собака, бегущая на поводке впереди хозяина, думает, что ведет его за собой.
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: программа обработки изображения для выжигания/сверления

Сообщение Nick »

Алексс писал(а):первое что приходит на ум - распараллелить процесс вычисления на несколько ядер.
Что, так медленно работает?
Аватара пользователя
Алексс
Почётный участник
Почётный участник
Сообщения: 2210
Зарегистрирован: 20 июл 2012, 15:49
Репутация: 266
Заслуга: IQ32
Настоящее имя: Алексей
Откуда: Прага
Контактная информация:

Re: программа обработки изображения для выжигания/сверления

Сообщение Алексс »

ну все относительно конечно, план то не гнать.
но на моем рабочем core I7 2600 одна итерация считается около 2х секунд на дефолтных настройках.
там очень много математики... и вся на жабе :)

PS: итераций надо хотябы 100, тогда результат весьма и весьма!
Каждая собака, бегущая на поводке впереди хозяина, думает, что ведет его за собой.
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: программа обработки изображения для выжигания/сверления

Сообщение Nick »

Да и правда не быстро идет... и это при 2000 точек...
Кстати, а что он подстраивает каждую итерацию? Зачем он диаграмму Вороного?

---------
А понял, они улучшают сетку точек смещая точку к центру ячейки диаграммы. А как тогда они делают первое разбиение?
Аватара пользователя
Сергей Саныч
Мастер
Сообщения: 9116
Зарегистрирован: 30 май 2012, 14:20
Репутация: 2857
Откуда: Тюмень
Контактная информация:

Re: программа обработки изображения для выжигания/сверления

Сообщение Сергей Саныч »

Алексс писал(а):первое что приходит на ум - распараллелить процесс вычисления на несколько ядер
первое, что приходит - переписать на нормальном языке...
Чудес не бывает. Бывают фокусы.
Аватара пользователя
Алексс
Почётный участник
Почётный участник
Сообщения: 2210
Зарегистрирован: 20 июл 2012, 15:49
Репутация: 266
Заслуга: IQ32
Настоящее имя: Алексей
Откуда: Прага
Контактная информация:

Re: программа обработки изображения для выжигания/сверления

Сообщение Алексс »

бьют на квадратики и берут яркость рандомной точки внутри.

Код: Выделить всё

int  i = 0;
  while (i < maxParticles)
  {

    float fx = lowBorderX +  random(hiBorderX - lowBorderX);
    float fy = lowBorderY +  random(hiBorderY - lowBorderY);

    float p = brightness(imgblur.pixels[ floor(fy)*imgblur.width + floor(fx) ])/255; 
    // OK to use simple floor_ rounding here, because  this is a one-time operation,
    // creating the initial distribution that will be iterated.

    if (invertImg)
    {
      p =  1 - p;
    }

//    if (random(.5) >= p ) {  
    if (.5 >= p ) {  
      Vec2D p1 = new Vec2D(fx, fy);
      particles[i] = p1;  
      i++;
    }
  } 
даже нихера не бьют. тупо рандомом :)
Каждая собака, бегущая на поводке впереди хозяина, думает, что ведет его за собой.
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: программа обработки изображения для выжигания/сверления

Сообщение Nick »

Забыл выключить, дошло до 1114 итерации :)
Снимок-22.png (16717 просмотров) <a class='original' href='./download/file.php?id=16389&sid=83bf1bbc5f5509d27d17178f47ed2669&mode=view' target=_blank>Загрузить оригинал (330.26 КБ)</a>
Кстати Алексс, не пробовал "x" нажимать?:)
Алексс писал(а):даже нихера не бьют. тупо рандомом
Как же они тогда потом кучкуются в темных местах?
Serg-tmn писал(а):
Алексс писал(а):первое что приходит на ум - распараллелить процесс вычисления на несколько ядер
первое, что приходит - переписать на нормальном языке...
На питоне? :hehehe:
Аватара пользователя
Алексс
Почётный участник
Почётный участник
Сообщения: 2210
Зарегистрирован: 20 июл 2012, 15:49
Репутация: 266
Заслуга: IQ32
Настоящее имя: Алексей
Откуда: Прага
Контактная информация:

Re: программа обработки изображения для выжигания/сверления

Сообщение Алексс »

Nick писал(а):дошло до 1114 итерации
какая красотень получилась!
Nick писал(а):не пробовал "x" нажимать?
пробовал. не работает. по я вробовал в ручную задать 49000 точек. не дождался первой итерации :)
Nick писал(а):Как же они тогда потом кучкуются в темных местах?
первая итерация, как я понял сильно от фонаря и очень грубо находит точку, где что-то есть, строится вороная сетка, потом к каждой ячейке находится среднее значение яркости и ее центр яркости чтоли

Код: Выделить всё

              xSum += PicDensity * x;
              ySum += PicDensity * y; 
              dSum += PicDensity;
       }
      if (dSum > 0)
      {
        xSum /= dSum;
        ySum /= dSum;
      }
на полученных точках проделывается таже операция и тп.
это же надо было придумать !
переписать на нормальном языке
можно. но нужно ли ?
спецально обученные обезьяны уже забили всякие ништяки в либы для жабы. 10 минут подождал и готовый svg получил (если не зависло в процессе)...
Каждая собака, бегущая на поводке впереди хозяина, думает, что ведет его за собой.
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: программа обработки изображения для выжигания/сверления

Сообщение Nick »

Алексс писал(а):пробовал. не работает. по я вробовал в ручную задать 49000 точек. не дождался первой итерации
а у меня сработало, уже час жду первую итерацию :).
Алексс писал(а):и ее центр яркости чтоли
а вот теперь понятнее :).
Аватара пользователя
Алексс
Почётный участник
Почётный участник
Сообщения: 2210
Зарегистрирован: 20 июл 2012, 15:49
Репутация: 266
Заслуга: IQ32
Настоящее имя: Алексей
Откуда: Прага
Контактная информация:

Re: программа обработки изображения для выжигания/сверления

Сообщение Алексс »

я понял. нужно чаще употреблять слова "типа", "чтоли", "опа", "наверное".
ближе к народу и проясняют суть дела :)
Каждая собака, бегущая на поводке впереди хозяина, думает, что ведет его за собой.
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: программа обработки изображения для выжигания/сверления

Сообщение Nick »

Есть первая итерация :cheesy:
17000 секунд, это около 5 часов :)
Вложения
Снимок-23.png (16682 просмотра) <a class='original' href='./download/file.php?id=16399&sid=83bf1bbc5f5509d27d17178f47ed2669&mode=view' target=_blank>Загрузить оригинал (404.41 КБ)</a>
Аватара пользователя
Ворон226
Мастер
Сообщения: 1922
Зарегистрирован: 01 окт 2012, 18:14
Репутация: 181
Откуда: Солнечногорск Московской обл. - Борки Конаковского р-на - Скоморохово Фировского р-на
Контактная информация:

Re: программа обработки изображения для выжигания/сверления

Сообщение Ворон226 »

А первый вариант-то получше будет ;)
Хочешь быть счастливым? Будь им!
Аватара пользователя
michael-yurov
Почётный участник
Почётный участник
Сообщения: 11624
Зарегистрирован: 26 июл 2012, 00:10
Репутация: 4634
Настоящее имя: Михаил Львович
Откуда: Новоуральск
Контактная информация:

Re: Программа для выжигания/сверления изображения StippleGen

Сообщение michael-yurov »

Не хватило разрешения монитора для окружностей менее 1 пикселя, из за этого они слились в черное.
Аватара пользователя
lexalex83
Мастер
Сообщения: 211
Зарегистрирован: 17 июн 2013, 08:34
Репутация: 7
Контактная информация:

Re: Программа для выжигания/сверления изображения StippleGen

Сообщение lexalex83 »

Алексс писал(а):бьют на квадратики и берут яркость рандомной точки внутри.
По-моему не на квадратики а на диаграмму Вороного. что то не до конца понимаю алгоритм. А еще кто нибудь знает программы подобные этой?
GipsyRaven
Новичок
Сообщения: 5
Зарегистрирован: 29 янв 2017, 19:33
Репутация: 0
Контактная информация:

Re: Программа для выжигания/сверления изображения StippleGen

Сообщение GipsyRaven »

Подскажите пожалуйста, как подготавливали gcode сверловки и скармливали его LinuxCNC
Ответить

Вернуться в «Новости и анонсы»