Converter uma imagem em um array envolve transformar os dados de pixel da imagem em uma representação numérica. Isso permite armazenamento, manipulação e processamento eficientes da imagem nos computadores. Veja como funciona:
Neste tutorial, aprenderemos como converter uma imagem em um array usando Python. Converter uma imagem em um array é uma tarefa importante para treinar um modelo de aprendizado de máquina baseado nos recursos de uma imagem. Usamos principalmente a biblioteca NumPy em Python para trabalhar com arrays, então também podemos usá-la para converter imagens em um array. Além do NumPy, também podemos usar a biblioteca Keras em Python para a mesma tarefa.
Portanto, na seção abaixo, apresentaremos um tutorial sobre como converter uma imagem em um array usando as bibliotecas NumPy e Keras em Python.
Podemos usar o NumPy para converter imagens em arrays, mas ele não tem função para ler imagens. Então, primeiro precisamos usar a biblioteca PIL em Python para ler uma imagem. Se você nunca usou antes, você pode instalá-lo facilmente usando o comando pip:
pip install Pillow
Agora, aqui está como podemos ler uma imagem usando a biblioteca PIL em Python:
from PIL import Image
image = Image.open('jacks.png')
Depois de ler a imagem, veja como podemos convertê-la em um array usando a biblioteca NumPy em Python:
from numpy import asarray
data = asarray(image)
print(data)
Saída:
[[[188 216 238]
[188 216 238]
[187 215 237]
...
[203 219 234]
[203 219 234]
[203 219 234]]
[[187 215 237]
[188 216 238]
[188 216 238]
...
[203 219 234]
[204 220 235]
[204 220 235]]
[[184 212 234]
[186 214 236]
[185 213 235]
...
[205 221 236]
[205 221 236]
[205 221 236]]
...
[[131 154 172]
[132 155 173]
[134 156 174]
...
[123 136 145]
[126 139 148]
[129 142 151]]
[[129 152 170]
[130 153 172]
[134 156 173]
...
[123 136 145]
[124 137 146]
[127 140 149]]
[[130 153 171]
[131 154 172]
[132 154 172]
...
[122 135 144]
[125 138 147]
[128 141 150]]]
Podemos usar a biblioteca Keras em Python tanto para ler imagens quanto para convertê-las em arrays. Então aqui está como podemos ler e converter uma imagem em um array usando a biblioteca Keras em Python:
from keras.preprocessing.image import load_img
from keras.preprocessing.image import img_to_array
img = load_img("jacks.png")
data = img_to_array(img)
print(data)
Saída:
[[[188. 216. 238.]
[188. 216. 238.]
[187. 215. 237.]
...
[203. 219. 234.]
[203. 219. 234.]
[203. 219. 234.]]
[[187. 215. 237.]
[188. 216. 238.]
[188. 216. 238.]
...
[203. 219. 234.]
[204. 220. 235.]
[204. 220. 235.]]
[[184. 212. 234.]
[186. 214. 236.]
[185. 213. 235.]
...
[205. 221. 236.]
[205. 221. 236.]
[205. 221. 236.]]
...
[[131. 154. 172.]
[132. 155. 173.]
[134. 156. 174.]
...
[123. 136. 145.]
[126. 139. 148.]
[129. 142. 151.]]
[[129. 152. 170.]
[130. 153. 172.]
[134. 156. 173.]
...
[123. 136. 145.]
[124. 137. 146.]
[127. 140. 149.]]
[[130. 153. 171.]
[131. 154. 172.]
[132. 154. 172.]
...
[122. 135. 144.]
[125. 138. 147.]
[128. 141. 150.]]]
É assim que podemos converter facilmente imagens em um array usando a linguagem de programação Python.