Отзывы о картине из нитей RingString
Отзывы о картине из нитей RingString Ресурс 1ВАШ ГОРОД — МОСКВА
Да выбрать другой
От выбранного города зависят сроки доставки
×
ВВЕДИТЕ ГОРОД
СПАСИБО! ВАШ ОТЗЫВ ОТПРАВЛЕН НА МОДЕРАЦИЮ×
Имя*
Текст отзыва*
Изображения
Ксюша
Набор потрясающий, я не могла остановиться. Почти собрала за первый вечер, но в 4 утра сдалась. Следующим вечером завершила начатое. Буду покупать еще на подарки. А может даже соберу еще одну сама.
Марина
Получив набор в подарок, я не поверила что из ниток получится такая детализированная картинка. Выбирали с сыном фотографию долго, не все удачно подходили. Но итоговый результат — ЭТО ПОТРЯСАЮЩЕ! Выбираю куда повесить, и там хочу и там хочу =)
Хлоя
Я просто в восторге от процесса создания картины. Это отдельный вид медитации и релакса. Невозможно остановиться, хочется продолжать снова и снова. А результат получился фантастическим! Очень стильная и элегантная деталь интерьера
Елизавета
Отлично провела время за плетением картины! Большое спасибо команде Ringstring за интересный и качественный продукт, все отлично сделано и продуманно. Теперь хочется подарить такую картину всем родным и близким, обязательно буду покупать на подарки )
Инесса
Очень приятно было получить подарок, сделанный руками любимого мужчины☺️ Выглядит очень стильно и впишется в любой интерьер.
Эльвира
Как только увидела этот набор, поняла, надо брать! Очень медитативный, увлекательный процесс создания картины. Подбор фотографии занимает много времени для получения отменного результата, одно фото пришлось прогонять несколько раз, ибо итоговая картинка меняется. Онлайн помощник выше всяких похвал, качественный и продуманный сервис, да и материалы все на высоте. Спасибо RingString за часы отдыха в удовольствие.
Юлия
Получила удивительный подарок, в итоге нескольких приятных вечеров сама сделала портрет любимицы. Спасибо выдумщикам RingString за создание необычного конструктора.
Екатерина
Невероятно!!! Получила большое удовольствие от процесса: медитация во время сборки + оригинальная стильная картина за 4 часа! Отличный вариант для подарка друзьям
Maxim
Отличный подарок! Порадует всех: получателя своей необычностью, а «изготовителя» — медитативным процессом
Анна
Всегда мечтала получить портрет. Это такое увлекательное волшебство , красота своими руками. Спасибо создателям , очень понравилось !!!!!
Екатерина
Картина получилась шикарная, далась легко. Понравилась техника. Советую.
Любовь
Узнала об этом наборе у блогера и сразу для себя решила, что хочу это сделать. Это просто что то потрясающее. Собирала около 8 часов. Сделала картину для своего сына и его девушки на день рождения. Спасибо!
Лилия
Прекрасная картина. Давно хотела такую, но не знала где найти. Попалась случайно.
Собираем портрет с 2х дня и до 11 вечера, с перерывами. Получила огромное удовольствие при сборке. Очень увлекательное занятие. Слов нет, одни восторги.
Катерина
Спасибо RingString за приятно проведённый вечер 🙂 Отличная картина получилась!
Процесс очень занимательный. И приложение удобное с приятным музыкальным сопровождением.
Жаль что финишировала так быстро))
Юлия
Добрый день! В инстаграмме выскочила реклама набора, очень люблю рукоделие, но такого не встречала и решила попробовать! Выбрала фото и села мастерить, конечно было опасение, что ничего не получится, но я легко справилась даже с оооочень длинными ногтями. Получился просто шедевр, обязательно буду заказывать еще, ведь процесс и правда очень медитативный
Герман
3500 шагов, 8 часов времени и шикарный подарок для жены готов! Спасибо разработчикам, второй раз собирать такое я не отважусь, но в качестве подарка для знакомых рукодельников, возможно, ещё куплю)
Анна
Спасибо за картину, буду заказывать еще!
Маргарита
Результат потрясающий! Решила сделать подарок супругу на наше 30-летие со дня свадьбы. Уверена — он будет весьма впечатлён!!!! ❤️
Надежда
Очень интересно, очень ново, необычно, увлекательно. Невозможно остановиться. Я в восторге!
Инна
Собрала несколько рисунков, очень расслабляет, понравилась концепция и процесс)
Техника изготовления картин из ниток (String Art) на OpenCV – RoboCraft
На региональном новостном сайте увидел новость: «Янтарному подарили портрет Канта из 5 километров ниток» и заинтересовался — как же подобные картины делаются.
Оказалось, что подобная техника называется String Art и сразу же нашлись самые разные варианты изготовления подобных картин.
Как вручную:
, так и автоматически — при помощи самых разных станков:
Осталось разобраться — как же это делается программно.
По счастливому стечению обстоятельств на глаза попалась статья: Круглые картины из натянутых ниток. Разоблачение, которая и подсказала, что в основе лежит простой алгоритм, состоящий из следующих основных этапов:
1. предварительная обработка изображения: изображение переводится в градации серого, обрезается в квадрат, вписывается в круг и инвертируется в негатив.
2. процедура определения, где нужно провести линию: алгоритм в цикле перебирает все варианты проведения линии от одной точки ко всем остальны точкам, чтобы найти такой вариант, который даёт наиболее подходящее затенение.
К сожалению, код который приводится в статье сразу не заработал, зато на гитхабе быстро нашёлся готовый вариант на Python и OpenCV: string-art/alog2.py
Всё реализовано довольно просто:
import cv2 import numpy as np imgPath = './cat4.jpg' # My Cheshire Cat # Parameters imgRadius = 200 # Number of pixels that the image radius is resized to initPin = 0 # Initial pin to start threading from numPins = 200 # Number of pins on the circular loom numLines = 500 # Maximal number of lines minLoop = 3 # Disallow loops of less than minLoop lines lineWidth = 3 # The number of pixels that represents the width of a thread lineWeight = 15 # The weight a single thread has in terms of "darkness"
— подключаются нужные библиотеки и задаются соответствующие параметры, включая имя изображения, подлежащего преобразованию:
Задаются вспомогательные функции, которые реализуют предварительную обработку изображения — обрезки до круга и инвертирования:
# Invert grayscale image def invertImage(image): return (255-image) # Apply circular mask to image def maskImage(image, radius): y, x = np.ogrid[-radius:radius + 1, -radius:radius + 1] mask = x**2 + y**2 > radius**2 image[mask] = 0 return image # Compute coordinates of loom pins def pinCoords(radius, numPins=200, offset=0, x0=None, y0=None): alpha = np.linspace(0 + offset, 2*np.pi + offset, numPins + 1) if (x0 == None) or (y0 == None): x0 = radius + 1 y0 = radius + 1 coords = [] for angle in alpha[0:-1]: x = int(x0 + radius*np.cos(angle)) y = int(y0 + radius*np.sin(angle)) coords.append((x, y)) return coords # Compute a line mask def linePixels(pin0, pin1): length = int(np.hypot(pin1[0] - pin0[0], pin1[1] - pin0[1])) x = np.linspace(pin0[0], pin1[0], length) y = np.linspace(pin0[1], pin1[1], length) return (x.astype(np.int)-1, y.astype(np.int)-1)
А так же функции для расчёта кругового расположения штифтов, от которых будут натягиваться нитки.
Вся магия происходит здесь:
def main(): # Load image image = cv2. imread(imgPath) print("[+] loaded " + imgPath + " for threading..") # Crop image height, width = image.shape[0:2] minEdge= min(height, width) topEdge = int((height - minEdge)/2) leftEdge = int((width - minEdge)/2) imgCropped = image[topEdge:topEdge+minEdge, leftEdge:leftEdge+minEdge] cv2.imwrite('./cropped.png', imgCropped) # Convert to grayscale imgGray = cv2.cvtColor(imgCropped, cv2.COLOR_BGR2GRAY) cv2.imwrite('./gray.png', imgGray) # Resize image imgSized = cv2.resize(imgGray, (2*imgRadius + 1, 2*imgRadius + 1)) # Invert image imgInverted = invertImage(imgSized) cv2.imwrite('./inverted.png', imgInverted) # Mask image imgMasked = maskImage(imgInverted, imgRadius) cv2.imwrite('./masked.png', imgMasked) print("[+] image preprocessed for threading..") # Define pin coordinates coords = pinCoords(imgRadius, numPins) height, width = imgMasked.shape[0:2] # image result is rendered to imgResult = 255 * np.ones((height, width)) # Initialize variables i = 0 lines = [] previousPins = [] oldPin = initPin lineMask = np.zeros((height, width)) imgResult = 255 * np.ones((height, width)) # Loop over lines until stopping criteria is reached for line in range(numLines): i += 1 bestLine = 0 oldCoord = coords[oldPin] # Loop over possible lines for index in range(1, numPins): pin = (oldPin + index) % numPins coord = coords[pin] xLine, yLine = linePixels(oldCoord, coord) # Fitness function lineSum = np.sum(imgMasked[yLine, xLine]) if (lineSum > bestLine) and not(pin in previousPins): bestLine = lineSum bestPin = pin # Update previous pins if len(previousPins) >= minLoop: previousPins.pop(0) previousPins.append(bestPin) # Subtract new line from image lineMask = lineMask * 0 cv2. line(lineMask, oldCoord, coords[bestPin], lineWeight, lineWidth) imgMasked = np.subtract(imgMasked, lineMask) # Save line to results lines.append((oldPin, bestPin)) # plot results xLine, yLine = linePixels(coords[bestPin], coord) imgResult[yLine, xLine] = 0 #cv2.imshow('image', imgResult) #cv2.waitKey(1) # Break if no lines possible if bestPin == oldPin: break # Prepare for next loop oldPin = bestPin # Print progress #sys.stdout.write("\b\b") #sys.stdout.write("\r") #sys.stdout.write("[+] Computing line " + str(line + 1) + " of " + str(numLines) + " total") #sys.stdout.flush() print("\n[+] Image threaded") # Wait for user and save before exit #cv2.waitKey(0) #cv2.destroyAllWindows() cv2.imwrite('./threaded.png', imgResult) #rgb_img = cv2.cvtColor(imgResult.astype('uint8'), cv2.COLOR_BGR2RGB) #plt.imshow(rgb_img) #plt. show() main()
— картинка загружается, выполняется предварительная обработка, а далее в цикле
# Loop over lines until stopping criteria is reached for line in range(numLines):
перебираются возможные варианты расположения линий.
В качестве критерия оценки пригодности — используется оценка лучшего «затенения», то есть выбирается такая линия, которая покрывает наибольшее количество исходных тёмных областей исходного изображения:
# Fitness function lineSum = np.sum(imgMasked[yLine, xLine])
Результаты предварительной обработки изображения:
— инвертированное изображение:
— на инвертированное изображение наложена круглая маска:
Итоговый результат работы программы:
Вот и всё! Оказалось, что немного Python и OpenCV способны творить и такие интересные штуки для автоматизированной генерации произведений искусства.
Ссылки
string-art/alog2.py
Круглые картины из натянутых ниток
Янтарному подарили портрет Канта из 5 километров ниток
По теме
Робот-художник
999+ Картинки тем | Скачать бесплатные картинки на Unsplash
999+ Thread Pictures | Download Free Images on Unsplash- A framed photoPhotos 642
- A stack of photosCollections 5. 7k
- A group of peopleUsers 32
sewing
thread
needle
colorful
pattern
person
finger
починка игланаперсток
Коричневый фонкрупный планручная работа
хлопокрукоделиепалец
—— черный фоновой фон
HD -шаблон — обои — – –––– – –––– –– – –– –––– – – –– ––– –– –––– – –.
шитьеHd красные обоиБелые фоны
волокнагалантереякатушки
morogorotanzaniathreads
tailorreelcolorful
mogosoaia palacemogosoaiaromania
fashiontextilecolours
kawitphilippineseveryday
Hd color wallpapersrailrailway
indiatamil naduhandloom
Related collections
Thread
88 photos · Curated by Alexandre De CarvalhoThe Thread
27 photos · Куратор McKenna ScottThread
12 фото · Куратор Crystal Whitlowmendingneedleowrkthimble
tailorreelcolorful
Black backgroundsmacro
canadaontoronto
handssewPeople images & pictures
kawitphilippineseveryday
indiatamil naduhandloom
sewingHd red wallpapersWhite backgrounds
morogorotanzaniathreads
mogosoaia palacemogosoaiaromania
craftRainbow images & pictureslove heart
Texture backgroundsbhadohiknitting
иглы для человека
–––– –––– –––– – –––– – –––– –– – –– –––– – – –– ––– –– –––– – –.
FiberhaberDasheryReels
Brown Founksclose-Uphandmade
Cottonneedleworkfinger
HD Photle Wallpapersstylepolska
Связанные коллекции
Нить
88 ФОТОГРАФ Тема 12 фото · Куратор Кристал Уитлоуfashiontextilecolours
ontarioyarnwool
Hd color wallpapersrailrailway
Unsplash logoUnsplash+
In collaboration with Ave Calvar
Unsplash+
Unlock
mendingneedleowrkthimble
amirali mirhashemian
sewingHd red wallpapersWhite backgrounds
–––– –– –– –––– – –––– – –––– –– – –– –––– – – –– ––– –– –––– – –.
Héctor J. Rivas
волокна галантерейных изделий
K15 Photos
morogorotanzaniathreads
Faris Mohammed
Brown backgroundsclose-uphandmade
Bozhin Karaivanov
tailorreelcolorful
Unsplash logoUnsplash+
In collaboration with Ave Calvar
Unsplash+
Unlock
cottonneedleworkfinger
Liviu Rau
mogosoaia Palacemogosoaiaromania
amirali mirhashemian
Black backgroundsmacro
Patrycja Chociej
Hd pattern wallpapersstylepolska
Tracey Parish
canadaontoronto
Vishal Banik
fashiontextilecolours
Unsplash logoUnsplash+
In collaboration with Ave Calvar
Unsplash+
Unlock
handssewPeople images & pictures
Karly Santiago
craftRainbow images & imageslove heart
Нико Назер
kawitphilippineseveryday
Stephane Gagnon
ontarioyarnwool
Noor Sethi
Texture backgroundsbhadohiknitting
Tim Mossholder
Hd color wallpapersrailrailway
Unsplash logoUnsplash+
In collaboration with Ave Calvar
Unsplash+
Unlock
needlethreadinghuman
Deepak Rautela
indiatamil naduhandloom
Просмотр премиальных изображений на iStock | Скидка 20% на логотип iStock
UnsplashMake something awesome
Thread Stock-Fotos und Bilder — Getty Images
- CREATIVE
- EDITORIAL
- VIDEOS
Beste Übereinstimmung
Neuestes
Ältestes
Am beliebtesten
Alle Zeiträume24 Stunden48 Stunden72 Stunden7 Tage30 Tage12 MonateAngepasster Zeitraum
Lizenzfrei
Lizenzpflichtig
RF und RM