Следующий код сделает то, что вы хотите:
string(cellfun(@(x) [upper(x(1)) x(2:end)], str, 'UniformOutput', false))
cellfun
применяет следующую анонимную функцию к переменной str.
Анонимная функция просто возвращает конкатенацию верхнего регистра первого элемента, за которым следует остальная часть строки.
string
преобразует массив ячеек обратно в массив строк.
Отредактировано: для преобразования обратно в массив строк в соответствии с запросом в комментариях.
Однако другой ответ может привести к более простому чтению кода.