Помогите с обработкой изображения в приложении для iPhone - PullRequest
1 голос
/ 25 января 2011

Я работаю с инструментом обработки изображений в MATLAB.Как я могу преобразовать код MATLAB в Objective-C?

Вот некоторые из задач, которые я хочу сделать:

  • Я хочу повернуть наклонную линию к нормальной.

  • У меня есть алгоритм, который преобразует цветное изображение в черно-белое.(Как я могу получить доступ к значениям цвета пикселей в Objective-C?)

  • В функции getrgbfromimage, как я могу получить доступ к выводу значений пикселей в консоль?

  • Как запустить функцию (getrotatedımage) для каждого элемента массива?

Ответы [ 2 ]

0 голосов
/ 25 января 2011

CGBitmapContext будет получать значения пикселей из изображения.

http://developer.apple.com/library/ios/#documentation/GraphicsImaging/Reference/CGBitmapContext/Reference/reference.html

С таким же демонстрационным кодом.

Получение альфа-значения пикселя для UIImage(MonoTouch)

printf выведет значения RGB на консоль.

NSArray или NSMutableArray будут хранить ваши изображения, а простой цикл for позволит вам их перебирать.

0 голосов
/ 25 января 2011

Quartz 2D (он же Core Graphics) - это API для рисования 2D в iOS.Кварц, скорее всего, сделает все, что вы ищете.Я рекомендую проверить Quartz 2D Руководство по программированию в документации.Для ваших конкретных запросов проверьте эти разделы:

  • Цвета и цветовые пространства - для цветных и черно-белых изображений
  • Преобразования - для вращенияили выполняя любое аффинное преобразование
  • Растровые изображения и маски изображений - для получения информации о базовых данных изображения

Что касается запуска функции для каждого элемента массива, вы можете использовать API итерации блоков (если вашему приложению может потребоваться iOS 4.0 или выше).Пример:

[myArray enumerateObjectsUsingBlock:^(id item, NSUInteger index, BOOL *stop) {
  doSomethingWith(item);
}];

Если вы просто хотите вызвать метод для каждого элемента в массиве, есть также:

[myArray makeObjectsPerformSelector:@selector(doSomething)];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...