Spec-Zone .ru
спецификации, руководства, описания, API

Библиотека Разработчика iOS

Разработчик

Ускорьте Ссылку Платформы vImage Ссылка Морфологии

Опции
Развертывание Target:

На этой странице
Язык:

Ссылка Морфологии vImage

Наследование


Не применимый

Соответствует


Не применимый

Оператор импорта


Swift

import Accelerate

Objective C

@import Accelerate;

Морфологические функции изменяют форму объекта путем выполнения расширения, эрозии, максимума и минимальных операций. Расширение разворачивает объекты. Эрозия заключает их. В то время как минимум является особым случаем эрозии, максимум является особым случаем расширения. Точный характер расширения или уменьшения определяется ядром (также известный как элемент структуры) предоставленный вызывающей стороной. Число строк и число столбцов изображения не изменяются после применения морфологической работы.

Можно использовать морфологические функции на полутоновых изображениях, где исходное изображение планарное (одноканальный) или на полноцветных изображениях. Само ядро является всегда планарным.

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

Каждая морфологическая функция требует, чтобы Вы передали ее ядро свертки, определяющее, как значения соседних пикселей используются для вычислений значения целевого пикселя. Ядро является упакованным массивом, не дополняя в концах строк. Элементы массива должны иметь тип uint8_t (для Planar8 и форматов ARGB8888) или типа float (для PlanarF и форматов ARGBFFFF). Высота и ширина массива должны оба быть нечетными числами.

Например, 3 x 3 ядра свертки для изображения Planar8 состоят из девяти 8-разрядных (1-байтовых) значений, расположенных последовательно. Первые три значения представляют первую строку ядра, следующие три значения вторая строка и последние три значения третья строка.

Функции морфологии выполняют отсечение для предотвращения переполнения для форматов ARGB8888 и Planar8. Влажное отсечение отображает все уровни яркости выше 255, к 255, все уровни яркости ниже 0, к 0, и оставляет уровни яркости между 0 и 255, содержащими, неизменными.

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

Функции

  • Расширяет область интереса в исходном изображении ARGBFFFF с помощью M x N ядро.

    Объявление

    Swift

    func vImageDilate_ARGBFFFF(_ src: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ srcOffsetToROI_X: vImagePixelCount, _ srcOffsetToROI_Y: vImagePixelCount, _ kernel: UnsafePointer<Float>, _ kernel_height: vImagePixelCount, _ kernel_width: vImagePixelCount, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImageDilate_ARGBFFFF ( const vImage_Buffer *src, const vImage_Buffer *dest, vImagePixelCount srcOffsetToROI_X, vImagePixelCount srcOffsetToROI_Y, const float *kernel, vImagePixelCount kernel_height, vImagePixelCount kernel_width, vImage_Flags flags );

    Параметры

    src

    Указатель на vImage буферизует структуру, содержащую данные для исходного изображения.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    Размер (число строк и число столбцов) целевого буфера также указывает размер области интереса к исходному буферу.

    srcOffsetToROI_X

    Горизонтальное смещение, в пикселях, к верхнему левому пикселю области интереса в исходном изображении.

    srcOffsetToROI_Y

    Вертикальное смещение, в пикселях, к верхнему левому пикселю области интереса в исходном изображении.

    kernel

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

    kernel_height

    Высота ядра в пикселях. Это значение должно быть нечетным.

    kernel_width

    Ширина ядра в пикселях. Это значение должно быть нечетным.

    flags

    Опции использовать при выполнении морфологической работы. Установите kvImageDoNotTile отметьте, если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования. Установите kvImageLeaveAlphaUnchanged флаг, чтобы указать, что альфа-канал должен быть скопирован в неизменное конечное изображение.

    Возвращаемое значение

    kvImageNoError, иначе это возвращает один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Обсуждение

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

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в iOS 5.0 и позже.

  • Расширяет область интереса в исходном изображении ARGB8888 с помощью M x N ядро.

    Объявление

    Swift

    func vImageDilate_ARGB8888(_ src: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ srcOffsetToROI_X: vImagePixelCount, _ srcOffsetToROI_Y: vImagePixelCount, _ kernel: UnsafePointer<UInt8>, _ kernel_height: vImagePixelCount, _ kernel_width: vImagePixelCount, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImageDilate_ARGB8888 ( const vImage_Buffer *src, const vImage_Buffer *dest, vImagePixelCount srcOffsetToROI_X, vImagePixelCount srcOffsetToROI_Y, const unsigned char *kernel, vImagePixelCount kernel_height, vImagePixelCount kernel_width, vImage_Flags flags );

    Параметры

    src

    Указатель на vImage буферизует структуру, содержащую данные для исходного изображения.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    Размер (число строк и число столбцов) целевого буфера также указывает размер области интереса к исходному буферу.

    srcOffsetToROI_X

    Горизонтальное смещение, в пикселях, к верхнему левому пикселю области интереса в исходном изображении.

    srcOffsetToROI_Y

    Вертикальное смещение, в пикселях, к верхнему левому пикселю области интереса в исходном изображении.

    kernel

    Указатель на данные ядра, которые должны быть упакованным массивом без любого дополнения. Функция использует то же ядро для всех каналов.

    kernel_height

    Высота ядра в пикселях. Это значение должно быть нечетным.

    kernel_width

    Ширина ядра в пикселях. Это значение должно быть нечетным.

    flags

    Опции использовать при выполнении морфологической работы. Установите kvImageDoNotTile отметьте, если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования. Установите kvImageLeaveAlphaUnchanged флаг, чтобы указать, что альфа-канал должен быть скопирован в неизменное конечное изображение.

    Возвращаемое значение

    kvImageNoError, иначе это возвращает один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в iOS 5.0 и позже.

  • Расширяет область интереса в исходном изображении PlanarF с помощью M x N ядро.

    Объявление

    Swift

    func vImageDilate_PlanarF(_ src: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ srcOffsetToROI_X: vImagePixelCount, _ srcOffsetToROI_Y: vImagePixelCount, _ kernel: UnsafePointer<Float>, _ kernel_height: vImagePixelCount, _ kernel_width: vImagePixelCount, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImageDilate_PlanarF ( const vImage_Buffer *src, const vImage_Buffer *dest, vImagePixelCount srcOffsetToROI_X, vImagePixelCount srcOffsetToROI_Y, const float *kernel, vImagePixelCount kernel_height, vImagePixelCount kernel_width, vImage_Flags flags );

    Параметры

    src

    Указатель на vImage буферизует структуру, содержащую данные для исходного изображения.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    Размер (число строк и число столбцов) целевого буфера также указывает размер области интереса к исходному буферу.

    srcOffsetToROI_X

    Горизонтальное смещение, в пикселях, к верхнему левому пикселю области интереса в исходном изображении.

    srcOffsetToROI_Y

    Вертикальное смещение, в пикселях, к верхнему левому пикселю области интереса в исходном изображении.

    kernel

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

    kernel_height

    Высота ядра в пикселях. Это значение должно быть нечетным.

    kernel_width

    Ширина ядра в пикселях. Это значение должно быть нечетным.

    flags

    Опции использовать при выполнении морфологической работы. Установите kvImageDoNotTile отметьте, если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования. Установите kvImageLeaveAlphaUnchanged флаг, чтобы указать, что альфа-канал должен быть скопирован в неизменное конечное изображение.

    Возвращаемое значение

    kvImageNoError, иначе это возвращает один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в iOS 5.0 и позже.

  • Расширяет область интереса в исходном изображении Planar8 с помощью M x N ядро.

    Объявление

    Swift

    func vImageDilate_Planar8(_ src: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ srcOffsetToROI_X: vImagePixelCount, _ srcOffsetToROI_Y: vImagePixelCount, _ kernel: UnsafePointer<UInt8>, _ kernel_height: vImagePixelCount, _ kernel_width: vImagePixelCount, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImageDilate_Planar8 ( const vImage_Buffer *src, const vImage_Buffer *dest, vImagePixelCount srcOffsetToROI_X, vImagePixelCount srcOffsetToROI_Y, const unsigned char *kernel, vImagePixelCount kernel_height, vImagePixelCount kernel_width, vImage_Flags flags );

    Параметры

    src

    Указатель на vImage буферизует структуру, содержащую данные для исходного изображения.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    Размер (число строк и число столбцов) целевого буфера также указывает размер области интереса к исходному буферу.

    srcOffsetToROI_X

    Горизонтальное смещение, в пикселях, к верхнему левому пикселю области интереса в исходном изображении.

    srcOffsetToROI_Y

    Вертикальное смещение, в пикселях, к верхнему левому пикселю области интереса в исходном изображении.

    kernel

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

    kernel_height

    Высота ядра в пикселях. Это значение должно быть нечетным.

    kernel_width

    Ширина ядра в пикселях. Это значение должно быть нечетным.

    flags

    Опции использовать при выполнении морфологической работы. Установите kvImageDoNotTile отметьте, если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования. Установите kvImageLeaveAlphaUnchanged флаг, чтобы указать, что альфа-канал должен быть скопирован в неизменное конечное изображение.

    Возвращаемое значение

    kvImageNoError, иначе это возвращает один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в iOS 5.0 и позже.

  • Разрушает область интереса в исходном изображении ARGBFFFF с помощью M x N ядро.

    Объявление

    Swift

    func vImageErode_ARGBFFFF(_ src: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ srcOffsetToROI_X: vImagePixelCount, _ srcOffsetToROI_Y: vImagePixelCount, _ kernel: UnsafePointer<Float>, _ kernel_height: vImagePixelCount, _ kernel_width: vImagePixelCount, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImageErode_ARGBFFFF ( const vImage_Buffer *src, const vImage_Buffer *dest, vImagePixelCount srcOffsetToROI_X, vImagePixelCount srcOffsetToROI_Y, const float *kernel, vImagePixelCount kernel_height, vImagePixelCount kernel_width, vImage_Flags flags );

    Параметры

    src

    Указатель на vImage буферизует структуру, содержащую данные для исходного изображения.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    Размер (число строк и число столбцов) целевого буфера также указывает размер области интереса к исходному буферу.

    srcOffsetToROI_X

    Горизонтальное смещение, в пикселях, к верхнему левому пикселю области интереса в исходном изображении.

    srcOffsetToROI_Y

    Вертикальное смещение, в пикселях, к верхнему левому пикселю области интереса в исходном изображении.

    kernel

    Указатель на данные ядра, которые должны быть упакованным массивом без любого дополнения. Функция использует то же ядро для всех каналов.

    kernel_height

    Высота ядра в пикселях. Это значение должно быть нечетным.

    kernel_width

    Ширина ядра в пикселях. Это значение должно быть нечетным.

    flags

    Опции использовать при выполнении морфологической работы. Установите kvImageDoNotTile отметьте, если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования. Установите kvImageLeaveAlphaUnchanged флаг, чтобы указать, что альфа-канал должен быть скопирован в неизменное конечное изображение.

    Возвращаемое значение

    kvImageNoError, иначе это возвращает один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в iOS 5.0 и позже.

  • Разрушает область интереса в исходном изображении ARGB8888 с помощью M x N ядро.

    Объявление

    Swift

    func vImageErode_ARGB8888(_ src: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ srcOffsetToROI_X: vImagePixelCount, _ srcOffsetToROI_Y: vImagePixelCount, _ kernel: UnsafePointer<UInt8>, _ kernel_height: vImagePixelCount, _ kernel_width: vImagePixelCount, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImageErode_ARGB8888 ( const vImage_Buffer *src, const vImage_Buffer *dest, vImagePixelCount srcOffsetToROI_X, vImagePixelCount srcOffsetToROI_Y, const unsigned char *kernel, vImagePixelCount kernel_height, vImagePixelCount kernel_width, vImage_Flags flags );

    Параметры

    src

    Указатель на vImage буферизует структуру, содержащую данные для исходного изображения.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    Размер (число строк и число столбцов) целевого буфера также указывает размер области интереса к исходному буферу.

    srcOffsetToROI_X

    Горизонтальное смещение, в пикселях, к верхнему левому пикселю области интереса в исходном изображении.

    srcOffsetToROI_Y

    Вертикальное смещение, в пикселях, к верхнему левому пикселю области интереса в исходном изображении.

    kernel

    Указатель на данные ядра, которые должны быть упакованным массивом без любого дополнения. Функция использует то же ядро для всех каналов.

    kernel_height

    Высота ядра в пикселях. Это значение должно быть нечетным.

    kernel_width

    Ширина ядра в пикселях. Это значение должно быть нечетным.

    flags

    Опции использовать при выполнении морфологической работы. Установите kvImageDoNotTile отметьте, если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования. Установите kvImageLeaveAlphaUnchanged флаг, чтобы указать, что альфа-канал должен быть скопирован в неизменное конечное изображение.

    Возвращаемое значение

    kvImageNoError, иначе это возвращает один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в iOS 5.0 и позже.

  • Разрушает область интереса в исходном изображении PlanarF с помощью M x N ядро.

    Объявление

    Swift

    func vImageErode_PlanarF(_ src: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ srcOffsetToROI_X: vImagePixelCount, _ srcOffsetToROI_Y: vImagePixelCount, _ kernel: UnsafePointer<Float>, _ kernel_height: vImagePixelCount, _ kernel_width: vImagePixelCount, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImageErode_PlanarF ( const vImage_Buffer *src, const vImage_Buffer *dest, vImagePixelCount srcOffsetToROI_X, vImagePixelCount srcOffsetToROI_Y, const float *kernel, vImagePixelCount kernel_height, vImagePixelCount kernel_width, vImage_Flags flags );

    Параметры

    src

    Указатель на vImage буферизует структуру, содержащую данные для исходного изображения.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    Размер (число строк и число столбцов) целевого буфера также указывает размер области интереса к исходному буферу.

    srcOffsetToROI_X

    Горизонтальное смещение, в пикселях, к верхнему левому пикселю области интереса в исходном изображении.

    srcOffsetToROI_Y

    Вертикальное смещение, в пикселях, к верхнему левому пикселю области интереса в исходном изображении.

    kernel

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

    kernel_height

    Высота ядра в пикселях. Это значение должно быть нечетным.

    kernel_width

    Ширина ядра в пикселях. Это значение должно быть нечетным.

    flags

    Опции использовать при выполнении морфологической работы. Установите kvImageDoNotTile отметьте, если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования. Установите kvImageLeaveAlphaUnchanged флаг, чтобы указать, что альфа-канал должен быть скопирован в неизменное конечное изображение.

    Возвращаемое значение

    kvImageNoError, иначе это возвращает один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в iOS 5.0 и позже.

  • Разрушает область интереса в исходном изображении Planar8 с помощью M x N ядро.

    Объявление

    Swift

    func vImageErode_Planar8(_ src: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ srcOffsetToROI_X: vImagePixelCount, _ srcOffsetToROI_Y: vImagePixelCount, _ kernel: UnsafePointer<UInt8>, _ kernel_height: vImagePixelCount, _ kernel_width: vImagePixelCount, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImageErode_Planar8 ( const vImage_Buffer *src, const vImage_Buffer *dest, vImagePixelCount srcOffsetToROI_X, vImagePixelCount srcOffsetToROI_Y, const unsigned char *kernel, vImagePixelCount kernel_height, vImagePixelCount kernel_width, vImage_Flags flags );

    Параметры

    src

    Указатель на vImage буферизует структуру, содержащую данные для исходного изображения.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    Размер (число строк и число столбцов) целевого буфера также указывает размер области интереса к исходному буферу.

    srcOffsetToROI_X

    Горизонтальное смещение, в пикселях, к верхнему левому пикселю области интереса в исходном изображении.

    srcOffsetToROI_Y

    Вертикальное смещение, в пикселях, к верхнему левому пикселю области интереса в исходном изображении.

    kernel

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

    kernel_height

    Высота ядра в пикселях. Это значение должно быть нечетным.

    kernel_width

    Ширина ядра в пикселях. Это значение должно быть нечетным.

    flags

    Опции использовать при выполнении морфологической работы. Установите kvImageDoNotTile отметьте, если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования. Установите kvImageLeaveAlphaUnchanged флаг, чтобы указать, что альфа-канал должен быть скопирован в неизменное конечное изображение.

    Возвращаемое значение

    kvImageNoError, иначе это возвращает один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в iOS 5.0 и позже.

  • Максимизирует область интереса в исходном изображении ARGBFFFF с помощью M x N ядро.

    Объявление

    Swift

    func vImageMax_ARGBFFFF(_ src: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ tempBuffer: UnsafeMutablePointer<Void>, _ srcOffsetToROI_X: vImagePixelCount, _ srcOffsetToROI_Y: vImagePixelCount, _ kernel_height: vImagePixelCount, _ kernel_width: vImagePixelCount, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImageMax_ARGBFFFF ( const vImage_Buffer *src, const vImage_Buffer *dest, void *tempBuffer, vImagePixelCount srcOffsetToROI_X, vImagePixelCount srcOffsetToROI_Y, vImagePixelCount kernel_height, vImagePixelCount kernel_width, vImage_Flags flags );

    Параметры

    src

    Указатель на vImage буферизует структуру, содержащую данные для исходного изображения.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    Размер (число строк и число столбцов) целевого буфера также указывает размер области интереса к исходному буферу.

    tempBuffer

    Указатель на временный буфер. Если Вы передаете NULL, функция выделяет буфер, затем освобождает его перед возвратом. Также можно выделить буфер сами, когда Вы ответственны за освобождение его, когда Вы больше не потребность он.

    Если Вы хотите выделить буфер сами, посмотрите Обсуждение для получения информации о том, как определить минимальный размер, который необходимо выделить.

    srcOffsetToROI_X

    Горизонтальное смещение, в пикселях, к верхнему левому пикселю области интереса в исходном изображении.

    srcOffsetToROI_Y

    Вертикальное смещение, в пикселях, к верхнему левому пикселю области интереса в исходном изображении.

    kernel_height

    Высота ядра в пикселях. Это значение должно быть нечетным.

    kernel_width

    Ширина ядра в пикселях. Это значение должно быть нечетным.

    flags

    Опции использовать при выполнении морфологической работы. Установите kvImageDoNotTile отметьте, если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования. Установите kvImageLeaveAlphaUnchanged флаг, чтобы указать, что альфа-канал должен быть скопирован в неизменное конечное изображение.

    Возвращаемое значение

    kvImageNoError, иначе это возвращает один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Обсуждение

    Если Вы хотите выделить память для tempBuffer параметр самостоятельно, вызовите эту функцию дважды, следующим образом:

    1. Для определения минимального размера для временного буфера в первый раз, Вы вызываете эту функциональную передачу kvImageGetTempBufferSize флаг. Передайте те же значения для всех других параметров, в которых Вы намереваетесь использовать для второго вызова. Функция возвращает требуемый минимальный размер, который должен быть положительным значением. (Отрицательное возвращенное значение указывает ошибку.) kvImageGetTempBufferSize флаг препятствует тому, чтобы функция выполнила любую обработку кроме определить минимальный размер буфера.

    2. После того, как Вы выделяете достаточно площади для буфера возвращенного размера, вызываете функцию во второй раз, передавая допустимый указатель в tempBuffer параметр. На сей раз не передавайте kvImageGetTempBufferSize флаг.

    Морфологическая работа Макс является особым случаем работы расширения. В Макс. работе все элементы ядра имеют то же значение. Фактическое значение не имеет значения; только размер ядра является значительным. vImage оптимизирует этот особый случай, таким образом, Макс. функция значительно быстрее, чем Расширять функция, вызванная с универсальным ядром.

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в iOS 5.0 и позже.

  • Максимизирует область интереса в исходном изображении ARGB8888 с помощью M x N ядро.

    Объявление

    Swift

    func vImageMax_ARGB8888(_ src: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ tempBuffer: UnsafeMutablePointer<Void>, _ srcOffsetToROI_X: vImagePixelCount, _ srcOffsetToROI_Y: vImagePixelCount, _ kernel_height: vImagePixelCount, _ kernel_width: vImagePixelCount, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImageMax_ARGB8888 ( const vImage_Buffer *src, const vImage_Buffer *dest, void *tempBuffer, vImagePixelCount srcOffsetToROI_X, vImagePixelCount srcOffsetToROI_Y, vImagePixelCount kernel_height, vImagePixelCount kernel_width, vImage_Flags flags );

    Параметры

    src

    Указатель на vImage буферизует структуру, содержащую данные для исходного изображения.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    Размер (число строк и число столбцов) целевого буфера также указывает размер области интереса к исходному буферу.

    tempBuffer

    Указатель на временный буфер. Если Вы передаете NULL, функция выделяет буфер, затем освобождает его перед возвратом. Также можно выделить буфер сами, когда Вы ответственны за освобождение его, когда Вы больше не потребность он.

    Если Вы хотите выделить буфер сами, посмотрите Обсуждение для получения информации о том, как определить минимальный размер, который необходимо выделить.

    srcOffsetToROI_X

    Горизонтальное смещение, в пикселях, к верхнему левому пикселю области интереса в исходном изображении.

    srcOffsetToROI_Y

    Вертикальное смещение, в пикселях, к верхнему левому пикселю области интереса в исходном изображении.

    kernel_height

    Высота ядра в пикселях. Это значение должно быть нечетным.

    kernel_width

    Ширина ядра в пикселях. Это значение должно быть нечетным.

    flags

    Опции использовать при выполнении морфологической работы. Установите kvImageDoNotTile отметьте, если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования. Установите kvImageLeaveAlphaUnchanged флаг, чтобы указать, что альфа-канал должен быть скопирован в неизменное конечное изображение. Установите kvImageGetTempBufferSize отметьте, если Вы хотите определить минимальный размер для выделения для tempBuffer параметр.

    Возвращаемое значение

    kvImageNoError, иначе это возвращает один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Обсуждение

    Если Вы хотите выделить память для tempBuffer параметр самостоятельно, вызовите эту функцию дважды, следующим образом:

    1. Для определения минимального размера для временного буфера в первый раз, Вы вызываете эту функциональную передачу kvImageGetTempBufferSize флаг. Передайте те же значения для всех других параметров, в которых Вы намереваетесь использовать для второго вызова. Функция возвращает требуемый минимальный размер, который должен быть положительным значением. (Отрицательное возвращенное значение указывает ошибку.) kvImageGetTempBufferSize флаг препятствует тому, чтобы функция выполнила любую обработку кроме определить минимальный размер буфера.

    2. После того, как Вы выделяете достаточно площади для буфера возвращенного размера, вызываете функцию во второй раз, передавая допустимый указатель в tempBuffer параметр. На сей раз не передавайте kvImageGetTempBufferSize флаг.

    Морфологическая работа Макс является особым случаем работы расширения. В Макс. работе все элементы ядра имеют то же значение. Фактическое значение не имеет значения; только размер ядра является значительным. vImage оптимизирует этот особый случай, таким образом, Макс. функция значительно быстрее, чем Расширять функция, вызванная с универсальным ядром.

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в iOS 5.0 и позже.

  • Максимизирует с областью интереса в исходном изображении PlanarF с помощью M x N ядро.

    Объявление

    Swift

    func vImageMax_PlanarF(_ src: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ tempBuffer: UnsafeMutablePointer<Void>, _ srcOffsetToROI_X: vImagePixelCount, _ srcOffsetToROI_Y: vImagePixelCount, _ kernel_height: vImagePixelCount, _ kernel_width: vImagePixelCount, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImageMax_PlanarF ( const vImage_Buffer *src, const vImage_Buffer *dest, void *tempBuffer, vImagePixelCount srcOffsetToROI_X, vImagePixelCount srcOffsetToROI_Y, vImagePixelCount kernel_height, vImagePixelCount kernel_width, vImage_Flags flags );

    Параметры

    src

    Указатель на vImage буферизует структуру, содержащую данные для исходного изображения.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    Размер (число строк и число столбцов) целевого буфера также указывает размер области интереса к исходному буферу.

    tempBuffer

    Указатель на временный буфер. Если Вы передаете NULL, функция выделяет буфер, затем освобождает его перед возвратом. Также можно выделить буфер сами, когда Вы ответственны за освобождение его, когда Вы больше не потребность он.

    Если Вы хотите выделить буфер сами, посмотрите Обсуждение для получения информации о том, как определить минимальный размер, который необходимо выделить.

    srcOffsetToROI_X

    Горизонтальное смещение, в пикселях, к верхнему левому пикселю области интереса в исходном изображении.

    srcOffsetToROI_Y

    Вертикальное смещение, в пикселях, к верхнему левому пикселю области интереса в исходном изображении.

    kernel_height

    Высота ядра в пикселях. Это значение должно быть нечетным.

    kernel_width

    Ширина ядра в пикселях. Это значение должно быть нечетным.

    flags

    Опции использовать при выполнении морфологической работы. Установите kvImageDoNotTile отметьте, если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования. Установите kvImageLeaveAlphaUnchanged флаг, чтобы указать, что альфа-канал должен быть скопирован в неизменное конечное изображение.

    Возвращаемое значение

    kvImageNoError, иначе это возвращает один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Обсуждение

    Если Вы хотите выделить память для tempBuffer параметр самостоятельно, вызовите эту функцию дважды, следующим образом:

    1. Для определения минимального размера для временного буфера в первый раз, Вы вызываете эту функциональную передачу kvImageGetTempBufferSize флаг. Передайте те же значения для всех других параметров, в которых Вы намереваетесь использовать для второго вызова. Функция возвращает требуемый минимальный размер, который должен быть положительным значением. (Отрицательное возвращенное значение указывает ошибку.) kvImageGetTempBufferSize флаг препятствует тому, чтобы функция выполнила любую обработку кроме определить минимальный размер буфера.

    2. После того, как Вы выделяете достаточно площади для буфера возвращенного размера, вызываете функцию во второй раз, передавая допустимый указатель в tempBuffer параметр. На сей раз не передавайте kvImageGetTempBufferSize флаг.

    Морфологическая работа Макс является особым случаем работы расширения. В Макс. работе все элементы ядра имеют то же значение. Фактическое значение не имеет значения; только размер ядра является значительным. vImage оптимизирует этот особый случай, таким образом, Макс. функция значительно быстрее, чем Расширять функция, вызванная с универсальным ядром.

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в iOS 5.0 и позже.

  • Максимизирует область интереса в исходном изображении Planar8 с помощью M x N ядро.

    Объявление

    Swift

    func vImageMax_Planar8(_ src: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ tempBuffer: UnsafeMutablePointer<Void>, _ srcOffsetToROI_X: vImagePixelCount, _ srcOffsetToROI_Y: vImagePixelCount, _ kernel_height: vImagePixelCount, _ kernel_width: vImagePixelCount, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImageMax_Planar8 ( const vImage_Buffer *src, const vImage_Buffer *dest, void *tempBuffer, vImagePixelCount srcOffsetToROI_X, vImagePixelCount srcOffsetToROI_Y, vImagePixelCount kernel_height, vImagePixelCount kernel_width, vImage_Flags flags );

    Параметры

    src

    Указатель на vImage буферизует структуру, содержащую данные для исходного изображения.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    Размер (число строк и число столбцов) целевого буфера также указывает размер области интереса к исходному буферу.

    tempBuffer

    Указатель на временный буфер. Если Вы передаете NULL, функция выделяет буфер, затем освобождает его перед возвратом. Также можно выделить буфер сами, когда Вы ответственны за освобождение его, когда Вы больше не потребность он.

    Если Вы хотите выделить буфер сами, посмотрите Обсуждение для получения информации о том, как определить минимальный размер, который необходимо выделить.

    srcOffsetToROI_X

    Горизонтальное смещение, в пикселях, к верхнему левому пикселю области интереса в исходном изображении.

    srcOffsetToROI_Y

    Вертикальное смещение, в пикселях, к верхнему левому пикселю области интереса в исходном изображении.

    kernel_height

    Высота ядра в пикселях. Это значение должно быть нечетным.

    kernel_width

    Ширина ядра в пикселях. Это значение должно быть нечетным.

    flags

    Опции использовать при выполнении морфологической работы. Установите kvImageDoNotTile отметьте, если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования. Установите kvImageLeaveAlphaUnchanged флаг, чтобы указать, что альфа-канал должен быть скопирован в неизменное конечное изображение.

    Возвращаемое значение

    kvImageNoError, иначе это возвращает один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Обсуждение

    Если Вы хотите выделить память для tempBuffer параметр самостоятельно, вызовите эту функцию дважды, следующим образом:

    1. Для определения минимального размера для временного буфера в первый раз, Вы вызываете эту функциональную передачу kvImageGetTempBufferSize флаг. Передайте те же значения для всех других параметров, в которых Вы намереваетесь использовать для второго вызова. Функция возвращает требуемый минимальный размер, который должен быть положительным значением. (Отрицательное возвращенное значение указывает ошибку.) kvImageGetTempBufferSize флаг препятствует тому, чтобы функция выполнила любую обработку кроме определить минимальный размер буфера.

    2. После того, как Вы выделяете достаточно площади для буфера возвращенного размера, вызываете функцию во второй раз, передавая допустимый указатель в tempBuffer параметр. На сей раз не передавайте kvImageGetTempBufferSize флаг.

    Морфологическая работа Макс является особым случаем работы расширения. В Макс. работе все элементы ядра имеют то же значение. Фактическое значение не имеет значения; только размер ядра является значительным. vImage оптимизирует этот особый случай, таким образом, Макс. функция значительно быстрее, чем Расширять функция, вызванная с универсальным ядром.

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в iOS 5.0 и позже.

  • Минимизирует область интереса в исходном изображении ARGBFFFF с помощью M x N ядро.

    Объявление

    Swift

    func vImageMin_ARGBFFFF(_ src: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ tempBuffer: UnsafeMutablePointer<Void>, _ srcOffsetToROI_X: vImagePixelCount, _ srcOffsetToROI_Y: vImagePixelCount, _ kernel_height: vImagePixelCount, _ kernel_width: vImagePixelCount, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImageMin_ARGBFFFF ( const vImage_Buffer *src, const vImage_Buffer *dest, void *tempBuffer, vImagePixelCount srcOffsetToROI_X, vImagePixelCount srcOffsetToROI_Y, vImagePixelCount kernel_height, vImagePixelCount kernel_width, vImage_Flags flags );

    Параметры

    src

    Указатель на vImage буферизует структуру, содержащую данные для исходного изображения.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    Размер (число строк и число столбцов) целевого буфера также указывает размер области интереса к исходному буферу.

    tempBuffer

    Указатель на временный буфер. Если Вы передаете NULL, функция выделяет буфер, затем освобождает его перед возвратом. Также можно выделить буфер сами, когда Вы ответственны за освобождение его, когда Вы больше не потребность он.

    Если Вы хотите выделить буфер сами, посмотрите Обсуждение для получения информации о том, как определить минимальный размер, который необходимо выделить.

    srcOffsetToROI_X

    Горизонтальное смещение, в пикселях, к верхнему левому пикселю области интереса в исходном изображении.

    srcOffsetToROI_Y

    Вертикальное смещение, в пикселях, к верхнему левому пикселю области интереса в исходном изображении.

    kernel_height

    Высота ядра в пикселях. Это значение должно быть нечетным.

    kernel_width

    Ширина ядра в пикселях. Это значение должно быть нечетным.

    flags

    Опции использовать при выполнении морфологической работы. Установите kvImageDoNotTile отметьте, если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования. Установите kvImageLeaveAlphaUnchanged флаг, чтобы указать, что альфа-канал должен быть скопирован в неизменное конечное изображение.

    Возвращаемое значение

    kvImageNoError, иначе это возвращает один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Обсуждение

    Если Вы хотите выделить память для tempBuffer параметр самостоятельно, вызовите эту функцию дважды, следующим образом:

    1. Для определения минимального размера для временного буфера в первый раз, Вы вызываете эту функциональную передачу kvImageGetTempBufferSize флаг. Передайте те же значения для всех других параметров, в которых Вы намереваетесь использовать для второго вызова. Функция возвращает требуемый минимальный размер, который должен быть положительным значением. (Отрицательное возвращенное значение указывает ошибку.) kvImageGetTempBufferSize флаг препятствует тому, чтобы функция выполнила любую обработку кроме определить минимальный размер буфера.

    2. После того, как Вы выделяете достаточно площади для буфера возвращенного размера, вызываете функцию во второй раз, передавая допустимый указатель в tempBuffer параметр. На сей раз не передавайте kvImageGetTempBufferSize флаг.

    Морфологическая операция Min является особым случаем работы эрозии. В операции Мин все элементы ядра имеют то же значение. Фактическое значение не имеет значения; только размер ядра является значительным. vImage оптимизирует этот особый случай, таким образом, функция Мин значительно быстрее, чем Разрушать функция, вызванная с универсальным ядром.

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в iOS 5.0 и позже.

  • Минимизирует область интереса в исходном изображении ARGB8888 с помощью M x N ядро.

    Объявление

    Swift

    func vImageMin_ARGB8888(_ src: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ tempBuffer: UnsafeMutablePointer<Void>, _ srcOffsetToROI_X: vImagePixelCount, _ srcOffsetToROI_Y: vImagePixelCount, _ kernel_height: vImagePixelCount, _ kernel_width: vImagePixelCount, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImageMin_ARGB8888 ( const vImage_Buffer *src, const vImage_Buffer *dest, void *tempBuffer, vImagePixelCount srcOffsetToROI_X, vImagePixelCount srcOffsetToROI_Y, vImagePixelCount kernel_height, vImagePixelCount kernel_width, vImage_Flags flags );

    Параметры

    src

    Указатель на vImage буферизует структуру, содержащую данные для исходного изображения.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    Размер (число строк и число столбцов) целевого буфера также указывает размер области интереса к исходному буферу.

    tempBuffer

    Указатель на временный буфер. Если Вы передаете NULL, функция выделяет буфер, затем освобождает его перед возвратом. Также можно выделить буфер сами, когда Вы ответственны за освобождение его, когда Вы больше не потребность он.

    Если Вы хотите выделить буфер сами, посмотрите Обсуждение для получения информации о том, как определить минимальный размер, который необходимо выделить.

    srcOffsetToROI_X

    Горизонтальное смещение, в пикселях, к верхнему левому пикселю области интереса в исходном изображении.

    srcOffsetToROI_Y

    Вертикальное смещение, в пикселях, к верхнему левому пикселю области интереса в исходном изображении.

    kernel_height

    Высота ядра в пикселях. Это значение должно быть нечетным.

    kernel_width

    Ширина ядра в пикселях. Это значение должно быть нечетным.

    flags

    Опции использовать при выполнении морфологической работы. Установите kvImageDoNotTile отметьте, если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования. Установите kvImageLeaveAlphaUnchanged флаг, чтобы указать, что альфа-канал должен быть скопирован в неизменное конечное изображение.

    Возвращаемое значение

    kvImageNoError, иначе это возвращает один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Обсуждение

    Если Вы хотите выделить память для tempBuffer параметр самостоятельно, вызовите эту функцию дважды, следующим образом:

    1. Для определения минимального размера для временного буфера в первый раз, Вы вызываете эту функциональную передачу kvImageGetTempBufferSize флаг. Передайте те же значения для всех других параметров, в которых Вы намереваетесь использовать для второго вызова. Функция возвращает требуемый минимальный размер, который должен быть положительным значением. (Отрицательное возвращенное значение указывает ошибку.) kvImageGetTempBufferSize флаг препятствует тому, чтобы функция выполнила любую обработку кроме определить минимальный размер буфера.

    2. После того, как Вы выделяете достаточно площади для буфера возвращенного размера, вызываете функцию во второй раз, передавая допустимый указатель в tempBuffer параметр. На сей раз не передавайте kvImageGetTempBufferSize флаг.

    Морфологическая операция Min является особым случаем работы эрозии. В операции Мин все элементы ядра имеют то же значение. Фактическое значение не имеет значения; только размер ядра является значительным. vImage оптимизирует этот особый случай, таким образом, функция Мин значительно быстрее, чем Разрушать функция, вызванная с универсальным ядром.

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в iOS 5.0 и позже.

  • Минимизирует область интереса в исходном изображении PlanarF с помощью M x N ядро.

    Объявление

    Swift

    func vImageMin_PlanarF(_ src: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ tempBuffer: UnsafeMutablePointer<Void>, _ srcOffsetToROI_X: vImagePixelCount, _ srcOffsetToROI_Y: vImagePixelCount, _ kernel_height: vImagePixelCount, _ kernel_width: vImagePixelCount, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImageMin_PlanarF ( const vImage_Buffer *src, const vImage_Buffer *dest, void *tempBuffer, vImagePixelCount srcOffsetToROI_X, vImagePixelCount srcOffsetToROI_Y, vImagePixelCount kernel_height, vImagePixelCount kernel_width, vImage_Flags flags );

    Параметры

    src

    Указатель на vImage буферизует структуру, содержащую данные для исходного изображения.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    Размер (число строк и число столбцов) целевого буфера также указывает размер области интереса к исходному буферу.

    tempBuffer

    Указатель на временный буфер. Если Вы передаете NULL, функция выделяет буфер, затем освобождает его перед возвратом. Также можно выделить буфер сами, когда Вы ответственны за освобождение его, когда Вы больше не потребность он.

    Если Вы хотите выделить буфер сами, посмотрите Обсуждение для получения информации о том, как определить минимальный размер, который необходимо выделить.

    srcOffsetToROI_X

    Горизонтальное смещение, в пикселях, к верхнему левому пикселю области интереса в исходном изображении.

    srcOffsetToROI_Y

    Вертикальное смещение, в пикселях, к верхнему левому пикселю области интереса в исходном изображении.

    kernel_height

    Высота ядра в пикселях. Это значение должно быть нечетным.

    kernel_width

    Ширина ядра в пикселях. Это значение должно быть нечетным.

    flags

    Опции использовать при выполнении морфологической работы. Установите kvImageDoNotTile отметьте, если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования. Установите kvImageLeaveAlphaUnchanged флаг, чтобы указать, что альфа-канал должен быть скопирован в неизменное конечное изображение.

    Возвращаемое значение

    kvImageNoError, иначе это возвращает один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Обсуждение

    Если Вы хотите выделить память для tempBuffer параметр самостоятельно, вызовите эту функцию дважды, следующим образом:

    1. Для определения минимального размера для временного буфера в первый раз, Вы вызываете эту функциональную передачу kvImageGetTempBufferSize флаг. Передайте те же значения для всех других параметров, в которых Вы намереваетесь использовать для второго вызова. Функция возвращает требуемый минимальный размер, который должен быть положительным значением. (Отрицательное возвращенное значение указывает ошибку.) kvImageGetTempBufferSize флаг препятствует тому, чтобы функция выполнила любую обработку кроме определить минимальный размер буфера.

    2. После того, как Вы выделяете достаточно площади для буфера возвращенного размера, вызываете функцию во второй раз, передавая допустимый указатель в tempBuffer параметр. На сей раз не передавайте kvImageGetTempBufferSize флаг.

    Морфологическая операция Min является особым случаем работы эрозии. В операции Мин все элементы ядра имеют то же значение. Фактическое значение не имеет значения; только размер ядра является значительным. vImage оптимизирует этот особый случай, таким образом, функция Мин значительно быстрее, чем Разрушать функция, вызванная с универсальным ядром.

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в iOS 5.0 и позже.

  • Минимизирует область интереса в исходном изображении Planar8 с помощью M x N ядро.

    Объявление

    Swift

    func vImageMin_Planar8(_ src: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ tempBuffer: UnsafeMutablePointer<Void>, _ srcOffsetToROI_X: vImagePixelCount, _ srcOffsetToROI_Y: vImagePixelCount, _ kernel_height: vImagePixelCount, _ kernel_width: vImagePixelCount, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImageMin_Planar8 ( const vImage_Buffer *src, const vImage_Buffer *dest, void *tempBuffer, vImagePixelCount srcOffsetToROI_X, vImagePixelCount srcOffsetToROI_Y, vImagePixelCount kernel_height, vImagePixelCount kernel_width, vImage_Flags flags );

    Параметры

    src

    Указатель на vImage буферизует структуру, содержащую данные для исходного изображения.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    Размер (число строк и число столбцов) целевого буфера также указывает размер области интереса к исходному буферу.

    tempBuffer

    Указатель на временный буфер. Если Вы передаете NULL, функция выделяет буфер, затем освобождает его перед возвратом. Также можно выделить буфер сами, когда Вы ответственны за освобождение его, когда Вы больше не потребность он.

    Если Вы хотите выделить буфер сами, посмотрите Обсуждение для получения информации о том, как определить минимальный размер, который необходимо выделить.

    srcOffsetToROI_X

    Горизонтальное смещение, в пикселях, к верхнему левому пикселю области интереса в исходном изображении.

    srcOffsetToROI_Y

    Вертикальное смещение, в пикселях, к верхнему левому пикселю области интереса в исходном изображении.

    kernel_height

    Высота ядра в пикселях. Это значение должно быть нечетным.

    kernel_width

    Ширина ядра в пикселях. Это значение должно быть нечетным.

    flags

    Опции использовать при выполнении морфологической работы. Установите kvImageDoNotTile отметьте, если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования. Установите kvImageLeaveAlphaUnchanged флаг, чтобы указать, что альфа-канал должен быть скопирован в неизменное конечное изображение.

    Возвращаемое значение

    kvImageNoError, иначе это возвращает один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Обсуждение

    Если Вы хотите выделить память для tempBuffer параметр самостоятельно, вызовите эту функцию дважды, следующим образом:

    1. Для определения минимального размера для временного буфера в первый раз, Вы вызываете эту функциональную передачу kvImageGetTempBufferSize флаг. Передайте те же значения для всех других параметров, в которых Вы намереваетесь использовать для второго вызова. Функция возвращает требуемый минимальный размер, который должен быть положительным значением. (Отрицательное возвращенное значение указывает ошибку.) kvImageGetTempBufferSize флаг препятствует тому, чтобы функция выполнила любую обработку кроме определить минимальный размер буфера.

    2. После того, как Вы выделяете достаточно площади для буфера возвращенного размера, вызываете функцию во второй раз, передавая допустимый указатель в tempBuffer параметр. На сей раз не передавайте kvImageGetTempBufferSize флаг.

    Морфологическая операция Min является особым случаем работы эрозии. В операции Мин все элементы ядра имеют то же значение. Фактическое значение не имеет значения; только размер ядра является значительным. vImage оптимизирует этот особый случай, таким образом, функция Мин значительно быстрее, чем Разрушать функция, вызванная с универсальным ядром.

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в iOS 5.0 и позже.