Уведомления

Группа в Telegram: @pythonsu

#1 Авг. 15, 2017 20:01:52

Lainelir
Зарегистрирован: 2017-08-15
Сообщения: 31
Репутация: +  0  -
Профиль   Отправить e-mail  

Отнять от числа каждый эллемент массива

Хочу сделать програмульку что бы сравнивала изображения в оттенках серого по корреляции Пирсона.
Каждый пиксель это число его яркости получаем массив чисел. Пытаюсь вручную сделать расчет корелляции.
вот:
import random
from PIL import Image

image1 =
image = Image.open(“1.jpg”) #Открываем изображение.
width = image.size #Определяем ширину.
height = image.size #Определяем высоту.
pix = image.load() #Выгружаем значения пикселей.

for i in range(width):
for j in range(height):
image1.append((pix)+1) # это массив пикселей первого изображения !!!!!!!



print(“ds”)

image2 =
image = Image.open(“2.jpg”) #Открываем изображение.
width = image.size #Определяем ширину.
height = image.size #Определяем высоту.
pix2 = image.load() #Выгружаем значения пикселей.

for i2 in range(width):
for j2 in range(height):
image2.append((pix2)+1) # массив второго изображения

print(image2)
print(image1)

size = width * height
print(size)

averimage1 = sum(image1)/size # это среднее арифметическое массива чисел первого изображения
print(averimage1)

averimage2 = sum(image2)/size # это среднее арифметическое массива чисел второго изображения
print(averimage2) #srednee znachenie

for x in image1: # и вот тут я пытаюсь отнять от среднего каждый элемент массива
x = averimage1 - image1

print(x)

но получаю вот это
Traceback (most recent call last):
ds
File “CGAMES/untitled/rr.py”, line 41, in <module>
x = averimage1 - image1
TypeError: unsupported operand type(s) for -: ‘float’ and ‘list’

как провести арифметические операции с массивами. Я в програмирование залез неделю назад ощщень нипанятна всё.
Кореляция из Numpy выдает ошибки очень часто по этому не хочу ее использовать. Scipy не устанавливается.

Офлайн

#2 Авг. 15, 2017 20:11:32

Romissevd
От: Счастье
Зарегистрирован: 2015-03-01
Сообщения: 533
Репутация: +  76  -
Профиль   Отправить e-mail  

Отнять от числа каждый эллемент массива

Ну, так надо ж отнимать X

 for x in image1: 
    x = averimage1 - x
    print(x)

Офлайн

#3 Авг. 16, 2017 06:38:18

Lainelir
Зарегистрирован: 2017-08-15
Сообщения: 31
Репутация: +  0  -
Профиль   Отправить e-mail  

Отнять от числа каждый эллемент массива

Romissevd
Ну, так надо ж отнимать X

Я просто новичок вот и не заметил)) Очень признателен за помощь вроде заработало))

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version