Как преобразовать чёрно-белую картинку в одномерный массив?

Я использую PI для подключения DS Share к экземпляру nextcloud. По этой причине я использую следующую команду:

sudo mount.cifs -o username=ds-user,password=pw-of-ds-user,uid=33,gid=33,file_mode=0660,dir_mode=0770,vers=2.1  //IP-of-NAS/share /mountpoint/where/to/mount

Я объясню, что команда - имя пользователя и пароль должны быть ясными. Я надеюсь, что - uid gid - значения для www-date, чтобы заставить его работать в nextcloud - file_mode устанавливает разрешение для точки монтирования - dir_mode делает то же самое для папок - vers = 2.1, что было самым важным для его работы, версия 2.0 не работала для моего DS в сочетании с моим Linux - и, конечно, источник и пункт назначения

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

br wikrie

1
задан 31 May 2018 в 10:58

1 ответ

При рисовании мышкой у вас не чётко чёрные пиксели и поэтому они не ру. У вас вторая функция вообще не по какому-либо rgb-цвету перебирает как в первой функции, а по прозрачности, т. к. i = 3 - это прозрачность первого пикселя. Естественно это работает, т. к. все остальные пиксели прозрачны.

Вот так должно работать и мышкой и с картинкой:

function convertData(imgdata)
{
    convert = [];
    for(var i = 0; i < imgdata.length; i+=4)
    {
        if(imgdata[i] < 128)
            convert.push(1);
        else
            convert.push(0);
    }
    return convert;
}
3
ответ дан 6 June 2018 в 11:58
  • 1
    Это немного улучшит результат преобразования, но это не то, что мне нужно. Такое ощущение, что структура ImageData разная у картинки, я загружаю и у той, что я рисую мышкой. Поэтому мне для мышки приходиться использовать изначальное смещение индекса var i = 3, а для загружаемой версии var i = 0 и плюс еще менять знак с & gt; на & lt; = – RealPeha 31 May 2018 в 11:08
  • 2
    @RealPeha, немного дополнил описание вашей ошибки в моём ответе. Мне не очень понятно для чего вам это нужно? Опишите задачу подробней. – Bharata 31 May 2018 в 11:21
  • 3
    Извините, что долго не отвечал, дело в том, что я решил свою проблему) Но Вы мне определенно помогли, спасибо! – RealPeha 5 June 2018 в 18:42
  • 4
    @RealPeha, это хорошо, что помог! ;-) Обращайтесь! – Bharata 5 June 2018 в 18:45

Другие вопросы по тегам:

Похожие вопросы: