I just figured this one out by modifying the first foreach statement.
$post_id = get_the_ID();
$cat_ids = array();
$categories = get_the_category();
if ( $categories && !is_wp_error( $categories ) ) {
foreach( $categories as $category ) {
if( 0 == $category->parent )
{
continue;
}else{
array_push( $cat_ids, $category->term_id );
}
$current_post_type = get_post_type( $post_id );
$args = array(
'category__in' => $cat_ids,
'post_type' => $current_post_type,
'posts_per_page' => '5',
'post__not_in' => array( $post_id )
);