Скрытый временной ряд в матрицу RGB - PullRequest
0 голосов
/ 19 февраля 2020

Используя поле Граманиан angular (GAF), вы можете преобразовать данные временных рядов в изображения RGB для классификации с помощью сетей Connet (CNN). GAF временных рядов представляет собой матрицу, содержащую полярные координаты временного ряда. Количество столбцов и строк матрицы равно количеству отметок времени в данных временных рядов.

Используя функцию imshow () библиотеки matplotlib, вы можете создать rgb-изображение матрицы GAF

GAF = gramian_angular_field(data)

fig = plt.figure(figsize=(4, 2))
ax = fig.add_subplot(111)
im = ax.imshow(GAF, cmap='rainbow', origin='lower')

Примечание: функция gramian_angular_field () возвращает numpy матрицу формы 30x30.

Вопрос: Я хотел бы иметь функцию, возвращающую матрицу формы 30x30x3 по заданной матрице GAF с формой 30x30. Где значения матрицы представляют значения rgb.

До сих пор я пробовал следующий подход:

fig = plt.figure(figsize=(4, 2))
ax = fig.add_subplot(111)
im = ax.imshow(GAF, cmap='rainbow', origin='lower')

fig.canvas.draw()
data = np.fromstring(fig.canvas.tostring_rgb(), dtype=np.uint8, sep='')
data = data.reshape(fig.canvas.get_width_height()[::-1] + (3,))

К сожалению, это возвращает матрицу формы 288x576x3, из-за параметры по фиг.

Буду признателен за любую помощь или решение моей проблемы.

Вот пример вывода ax.imshow ()

...