blockproc
- новое имя для blkproc
(которое устарело). Его можно использовать для применения функции к каждому блоку изображения. Например, если вы хотите разделить матрицу I на блоки 8x8 и вычислить среднее значение для каждого блока, вы сделаете следующее:
B=blockproc(I, [8 8], @(x) mean(x.data(:)));
B - это матрица, содержащая средства блоков.
Здесь есть две вещи:
[8 8]
указывает размер блоков, а не номер ] блоков. blockproc
. Если вам нужны сами блоки, вы должны сделать то, что предложил Адриен: A1=I(1:128, 1:128);
A2=I(129:256, 1:128);
A3=I(1:128, 129:256);
A4=I(129:256, 129:256);
Конечно, в реальной программе вы, вероятно, должны сделать это, используя цикл. import os
random_string = os.urandom(string_length)
и если вам нужна безопасная строка url:
import os
random_string = os.urandom(string_length).hex()
(обратите внимание, что длина random_string в этом случае больше, чем string_length)
Взято из отчета об ошибке 1023290 на Python.org :
junk_len = 1024
junk = (("%%0%dX" % junk_len) % random.getrandbits(junk_len *
8)).decode("hex")
Похоже, что метод fromhex ()
ожидает четное число шестнадцатеричных цифр. Ваша строка длиной 75 символов.
Имейте в виду, что что-то [: - 1]
исключает последний элемент! Просто используйте что-то [:]
.
Что касается последнего примера, следующее исправление, обеспечивающее четную длину строки, независимо от значения junk_len:
junk_len = 1024
junk = (("%%0%dX" % (junk_len * 2)) % random.getrandbits(junk_len * 8)).decode("hex")