def calc_rad_patch_idx2(outmost_num=5, current_num=3):
    '\n    以下のような、中心がGray、周りは CIELAB 空間の a*b*平面のカラーパッチの\n    RGB値のリストを得る。\n    https://user-images.githubusercontent.com/3609012/75444470-d3bc5600-59a6-11ea-962b-c315648782a9.png\n\n    得られたデータは並べ替えが済んでいないため、calc_rad_patch_idx2() で\n    得られる変換テーブルを使った変換が必要。\n    本関数はまさにその変換を行う。\n    '
    base = np.arange((outmost_num ** 2)).reshape((outmost_num, outmost_num))
    t_idx = ((outmost_num - current_num) // 2)
    trimmed = base[t_idx:(t_idx + current_num), t_idx:(t_idx + current_num)]
    half_num = (current_num // 2)
    conv_idx = []
    for idx in range(half_num):
        val = ((((current_num ** 2) // 2) + half_num) - (current_num * idx))
        conv_idx.append(val)
    for idx in range(current_num)[::(- 1)]:
        conv_idx.append(idx)
    for idx in range(1, (current_num - 1)):
        conv_idx.append((idx * current_num))
    for idx in range(current_num):
        val = (((current_num ** 2) - current_num) + idx)
        conv_idx.append(val)
    for idx in range(1, half_num):
        val = (((current_num ** 2) - 1) - (idx * current_num))
        conv_idx.append(val)
    conv_idx = trimmed.flatten()[conv_idx]
    return conv_idx
以下のような、中心がGray、周りは CIELAB 空間の a*b*平面のカラーパッチの
RGB値のリストを得る。
https://user-images.githubusercontent.com/3609012/75444470-d3bc5600-59a6-11ea-962b-c315648782a9.png

得られたデータは並べ替えが済んでいないため、calc_rad_patch_idx2() で
得られる変換テーブルを使った変換が必要。
本関数はまさにその変換を行う。
def calc_rad_patch_idx2(outmost_num=5, current_num=3):
    '\n    以下のような、中心がGray、周りは CIELAB 空間の a*b*平面のカラーパッチの\n    RGB値のリストを得る。\n    https://user-images.githubusercontent.com/3609012/75444470-d3bc5600-59a6-11ea-962b-c315648782a9.png\n\n    得られたデータは並べ替えが済んでいないため、calc_rad_patch_idx2() で\n    得られる変換テーブルを使った変換が必要。\n    本関数はまさにその変換を行う。\n    '
    base = np.arange((outmost_num ** 2)).reshape((outmost_num, outmost_num))
    t_idx = ((outmost_num - current_num) // 2)
    trimmed = base[t_idx:(t_idx + current_num), t_idx:(t_idx + current_num)]
    half_num = (current_num // 2)
    conv_idx = []
    for idx in range(half_num):
        val = ((((current_num ** 2) // 2) + half_num) - (current_num * idx))
        conv_idx.append(val)
    for idx in range(current_num)[::(- 1)]:
        conv_idx.append(idx)
    for idx in range(1, (current_num - 1)):
        conv_idx.append((idx * current_num))
    for idx in range(current_num):
        val = (((current_num ** 2) - current_num) + idx)
        conv_idx.append(val)
    for idx in range(1, half_num):
        val = (((current_num ** 2) - 1) - (idx * current_num))
        conv_idx.append(val)
    conv_idx = trimmed.flatten()[conv_idx]
    return conv_idx