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

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

Сообщение Алексс » 17 июл 2013, 13:31

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

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

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

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

Сообщение Nick » 17 июл 2013, 15:39

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

Что, так медленно работает?
Use the Console, Luke.
Аватара пользователя
Nick
Мастер
 
Сообщения: 22330
Зарегистрирован: 23 ноя 2009, 16:45
Откуда: Gatchina, Saint-Petersburg distr., Russia
Репутация: 1330
Заслуга: Developer
Медальки:

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

Сообщение Алексс » 17 июл 2013, 15:45

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

PS: итераций надо хотябы 100, тогда результат весьма и весьма!
Каждая собака, бегущая на поводке впереди хозяина, думает, что ведет его за собой.
Аватара пользователя
Алексс
Почётный участник
Почётный участник
 
Сообщения: 2109
Зарегистрирован: 20 июл 2012, 15:49
Откуда: Прага
Репутация: 216
Заслуга: IQ32
Медальки:
Настоящее имя: Алексей

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

Сообщение Nick » 17 июл 2013, 16:07

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

---------
А понял, они улучшают сетку точек смещая точку к центру ячейки диаграммы. А как тогда они делают первое разбиение?
Use the Console, Luke.
Аватара пользователя
Nick
Мастер
 
Сообщения: 22330
Зарегистрирован: 23 ноя 2009, 16:45
Откуда: Gatchina, Saint-Petersburg distr., Russia
Репутация: 1330
Заслуга: Developer
Медальки:

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

Сообщение Сергей Саныч » 17 июл 2013, 16:12

Алексс писал(а):первое что приходит на ум - распараллелить процесс вычисления на несколько ядер
первое, что приходит - переписать на нормальном языке...
Чудес не бывает. Бывают фокусы.
Аватара пользователя
Сергей Саныч
Мастер
 
Сообщения: 7392
Зарегистрирован: 30 май 2012, 14:20
Откуда: Тюмень
Репутация: 2259
Медальки:

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

Сообщение Алексс » 17 июл 2013, 16:16

бьют на квадратики и берут яркость рандомной точки внутри.
Код: Выделить всёРазвернуть
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++;
    }
  }


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

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

Сообщение Nick » 17 июл 2013, 16:43

Забыл выключить, дошло до 1114 итерации :)
Программа для выжигания/сверления изображения StippleGen Снимок-22.png


Кстати Алексс, не пробовал "x" нажимать?:)
Алексс писал(а):даже нихера не бьют. тупо рандомом

Как же они тогда потом кучкуются в темных местах?

Serg-tmn писал(а):
Алексс писал(а):первое что приходит на ум - распараллелить процесс вычисления на несколько ядер
первое, что приходит - переписать на нормальном языке...

На питоне? :hehehe:
Use the Console, Luke.
Аватара пользователя
Nick
Мастер
 
Сообщения: 22330
Зарегистрирован: 23 ноя 2009, 16:45
Откуда: Gatchina, Saint-Petersburg distr., Russia
Репутация: 1330
Заслуга: Developer
Медальки:

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

Сообщение Алексс » 17 июл 2013, 17:02

Nick писал(а):дошло до 1114 итерации

какая красотень получилась!

Nick писал(а):не пробовал "x" нажимать?

пробовал. не работает. по я вробовал в ручную задать 49000 точек. не дождался первой итерации :)

Nick писал(а):Как же они тогда потом кучкуются в темных местах?

первая итерация, как я понял сильно от фонаря и очень грубо находит точку, где что-то есть, строится вороная сетка, потом к каждой ячейке находится среднее значение яркости и ее центр яркости чтоли
Код: Выделить всёРазвернуть
              xSum += PicDensity * x;
              ySum += PicDensity * y;
              dSum += PicDensity;
       }
      if (dSum > 0)
      {
        xSum /= dSum;
        ySum /= dSum;
      }

на полученных точках проделывается таже операция и тп.
это же надо было придумать !

переписать на нормальном языке

можно. но нужно ли ?
спецально обученные обезьяны уже забили всякие ништяки в либы для жабы. 10 минут подождал и готовый svg получил (если не зависло в процессе)...
Каждая собака, бегущая на поводке впереди хозяина, думает, что ведет его за собой.
Аватара пользователя
Алексс
Почётный участник
Почётный участник
 
Сообщения: 2109
Зарегистрирован: 20 июл 2012, 15:49
Откуда: Прага
Репутация: 216
Заслуга: IQ32
Медальки:
Настоящее имя: Алексей

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

Сообщение Nick » 17 июл 2013, 17:16

Алексс писал(а):пробовал. не работает. по я вробовал в ручную задать 49000 точек. не дождался первой итерации

а у меня сработало, уже час жду первую итерацию :).
Алексс писал(а):и ее центр яркости чтоли

а вот теперь понятнее :).
Use the Console, Luke.
Аватара пользователя
Nick
Мастер
 
Сообщения: 22330
Зарегистрирован: 23 ноя 2009, 16:45
Откуда: Gatchina, Saint-Petersburg distr., Russia
Репутация: 1330
Заслуга: Developer
Медальки:

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

Сообщение Алексс » 17 июл 2013, 17:26

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

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

Сообщение Nick » 17 июл 2013, 22:11

Есть первая итерация :cheesy:
17000 секунд, это около 5 часов :)
Вложения
Программа для выжигания/сверления изображения StippleGen Снимок-23.png
Use the Console, Luke.
Аватара пользователя
Nick
Мастер
 
Сообщения: 22330
Зарегистрирован: 23 ноя 2009, 16:45
Откуда: Gatchina, Saint-Petersburg distr., Russia
Репутация: 1330
Заслуга: Developer
Медальки:

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

Сообщение Ворон226 » 17 июл 2013, 23:02

А первый вариант-то получше будет ;)
Хочешь быть счастливым? Будь им!
Аватара пользователя
Ворон226
Мастер
 
Сообщения: 1805
Зарегистрирован: 01 окт 2012, 18:14
Откуда: Солнечногорск Московской обл. - Борки Конаковского р-на - Скоморохово Фировского р-на
Репутация: 172
Медальки:

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

Сообщение michael-yurov » 18 июл 2013, 00:26

Не хватило разрешения монитора для окружностей менее 1 пикселя, из за этого они слились в черное.
Аватара пользователя
michael-yurov
Почётный участник
Почётный участник
 
Сообщения: 10056
Зарегистрирован: 26 июл 2012, 00:10
Откуда: Новоуральск, Свердловская область.
Репутация: 3622
Медальки:
Настоящее имя: Михаил Львович

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

Сообщение lexalex83 » 27 июл 2015, 13:56

Алексс писал(а):бьют на квадратики и берут яркость рандомной точки внутри.

По-моему не на квадратики а на диаграмму Вороного. что то не до конца понимаю алгоритм. А еще кто нибудь знает программы подобные этой?
Аватара пользователя
lexalex83
Опытный
 
Сообщения: 177
Зарегистрирован: 17 июн 2013, 08:34
Откуда: Витебск , Беларусь
Репутация: 6

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

Сообщение GipsyRaven » 07 фев 2017, 09:00

Подскажите пожалуйста, как подготавливали gcode сверловки и скармливали его LinuxCNC
GipsyRaven
Новичок
 
Сообщения: 4
Зарегистрирован: 29 янв 2017, 19:33
Репутация: 0


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

Кто сейчас на конференции

Зарегистрированные пользователи: @lice, Alexf2a, Andy52280, Antohha, Артем815, Asintek, Bing [Bot], CNC-Logic, Enot_1, Google [Bot], lerts, maratstr, Miha_Kuz, nik1, niksooon, Nonstopich, Pavelchr, Гагарин, Rom327, selenur, sergan, shalek, tampotrafaret, tsurika, VAT, Yahoo [Bot], Yandex [bot], Тенгель

Поделиться

Reputation System ©'