Получите пиксели и цвета от NSImage

Я создал объект NSImage и идеально хотел бы определить, сколько из каждого пиксельного цвета он содержит. Действительно ли это возможно?

9
задан Nippysaurus 3 January 2010 в 05:31
поделиться

3 ответа

Я предлагаю создать свой собственный Citmap Context , упаковывая его в графический контекст и установку, что в качестве текущего контекста Чтобы нарисовать себя , а затем доступа к данным пикселя, напрямую доступа к контексту растрового изображения.

Это будет больше кода, но сэкономит вам оба путешествия через представление TIFF и создание тысяч или миллионов объектов Nscolor. Если вы работаете с изображениями любого заметного размера, эти расходы будут быстро добавляться.

10
ответ дан 4 December 2019 в 07:35
поделиться

Получите NSBitmapImageRep от вашего NSImage. Затем вы можете получить доступ к пикселям.

NSImage* img = ...;
NSBitmapImageRep* raw_img = [NSBitmapImageRep imageRepWithData:[img TIFFRepresentation]];
NSColor* color = [raw_img colorAtX:0 y:0];
7
ответ дан 4 December 2019 в 07:35
поделиться

Ищите "гистограмму" в документации Core Image.

1
ответ дан 4 December 2019 в 07:35
поделиться
Другие вопросы по тегам:

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