Погоди, а что за ересь ты вообще творишь?
im = Image.open('IMG_7760.JPG')
a = np.asarray(im) # a - трёхмерный массив numpy (высота; ширина; каналы)
for bb in a: # перебираешь элементы по первому индексу (высоте), т.е. строки изображения
np.random.random((1,1,1)) * a #умножаешь каждый элемент (кортеж RGB) строки на одно и то же случайное число
#и всё. Полученное произведение выбрасывается за ненадобностью. Оригинальное значение ты не заменяешь ведь.
im = Image.fromarray(bb) #*строку* превращаешь в объект PIL.Image
im.save('2222.JPG') #и сохраняешь этот объект в файл
print(bb) #и выводишь на экран
Питон делает ровно то, что ты у него просишь.