Capitalize Shortcode Value on Output

Try this out. . .

function cwc_pkmn( $atts = array(), $content="" )
{
    // ------------------------
    // Settings:
    $path="https://wordpress.stackexchange.com/path/to/file/";
    $ext="png";
    // ------------------------

    // Shortcode input:
    $atts = shortcode_atts(
        array( 'name' => '' ),
        $atts,
        'pkmn_shortcode'
    );

    // Sanitize input:
    $name          =  esc_attr( $atts['name'] );

    // Init:
    $words_ucfirst = array();

    // Capitalize the first letter in each word:
    $words         = explode( '-', $name );

    foreach( $words as $word )
    {
        $words_ucfirst[] =  ucfirst( $word );
    }

    $name_mod = esc_attr( join( ' ', $words_ucfirst ) );

    return sprintf( '<img src="https://wordpress.stackexchange.com/questions/151323/%s%s.%s" alt="%s" title="%s" />',
        $path,
        $name,
        $ext,
        $name_mod,
        $name_mod
    );
}

add_shortcode( 'pkmn', 'cwc_pkmn' );