Самое быстрое изменение размеров изображения в [закрытой].NET

Не зная, в каком контексте это появится, но я верю, что свойство стиля CSS float, либо left, либо right, будет иметь такой эффект. С другой стороны, у него будут и другие побочные эффекты, такие как позволение тексту плавать вокруг него.

Пожалуйста, поправьте меня, если я ошибаюсь, я не уверен на 100%, и в настоящее время не могу проверить это сам.

8
задан Ash 28 July 2009 в 15:56
поделиться

4 ответа

Есть много статей, показывающих основы этого . Я использовал компоненты из Atalasoft и обнаружил, что они довольно хорошего качества. Есть нюансы изменения размера и работы с изображениями JPEG.

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

Одним из решений для обеспечения хорошей производительности является постановка в очередь входящих файлов, которые необходимо преобразовать. Добавьте больше машин, чтобы обрабатывать больше сообщений в очереди, или оптимизируйте код службы, чтобы повысить пропускную способность. Это'

6
ответ дан 5 December 2019 в 07:36
поделиться

Вот способ winforms

public Image ResizeImage( Image img, int width, int height )
{
    Bitmap b = new Bitmap( width, height ) ;
    using(Graphics g = Graphics.FromImage( (Image ) b ))
    {       
         g.DrawImage( img, 0, 0, width, height ) ;
    }

    return (Image ) b ;
}

, а вот способ WPF TransformedBitmap Class

7
ответ дан 5 December 2019 в 07:36
поделиться

Если деньги - это не цель, LeadTools - это традиционная библиотека для обработки изображений, которую нужно использовать. При этом я хотел бы сначала написать код, используя стандартные вызовы .NET GDI +, а затем провести некоторое тестирование. Вероятно, это решение будет достаточно производительным, но если нет, у вас будет базовый уровень, с которым вы сможете сравнивать другие библиотеки и решения. Все, что связано с созданием инструмента командной строки, повлечет за собой создание отдельного процесса для каждого образа, что может свести на нет преимущества перехода к неуправляемому коду.

2
ответ дан 5 December 2019 в 07:36
поделиться

Я не уверен в производительности, но OpenCV с открытым исходным кодом параметр.

void cvResize (const CvArr * I, CvArr * J, int interpolation = CV_INTER_LINEAR);

Функция cvResize изменяет размер изображения I так, чтобы оно точно соответствовало J. Если задана область интереса, функция учитывает ROI как обычно поддерживается. исходное изображение, использующее указанный элемент структурирования B, который определяет форму окрестности пикселя, по которой берется минимум:

0
ответ дан 5 December 2019 в 07:36
поделиться
Другие вопросы по тегам:

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