如何解决加载一个大的 tif 文件,但在 openCV 中只加载了第一个切片
我设法加载了 20 到 30 个切片的 tif 文件,但是当我继续处理具有 4000 个切片的原始文件时,只加载了第一个切片。我没有收到任何类型的错误。 我什至继续使用 FIJI image J 将这些文件重新保存到 tiff 文件中,以防原件损坏但结果相同。
这是我的原始文件之一:https://www.dropbox.com/s/wtkyj9qzxw4q1uf/CT_Part.tif?dl=0
etval,mats = cv.imreadmulti(tif,flags=cv.IMREAD_GRAYSCALE)
print(len(mats))
所以这个打印输出 1 而不是 4000 slice 。同样,如果我用只有 20 个切片的一小块原始文件进行测试,我确实得到了 20 个。
Opencv 版本:4.5.1 Python 版本:3.8.3
任何解释或建议将不胜感激。
解决方法
使用 tifffile 库,如果您的代码出现问题,您可以通过以下方式替换它:
<?php
if ( ! defined( 'ABSPATH' ) ) {
exit;
}
$related_product_view = woodmart_get_opt( 'related_product_view' );
if ( $related_products ) : ?>
<div class="related-products">
<?php
$heading = apply_filters( 'woocommerce_product_related_products_heading',__( 'Related products','woocommerce' ) );
if ( $heading ) :
?>
<h3 class="title slider-title"><?php echo esc_html( $heading ); ?></h3>
<?php endif; ?>
<?php
if ( $related_product_view == 'slider' ) {
$slider_args = array(
'slides_per_view' => ( woodmart_get_opt( 'related_product_columns' ) ) ? woodmart_get_opt( 'related_product_columns' ) : apply_filters( 'woodmart_related_products_per_view',4 ),'img_size' => 'woocommerce_thumbnail','products_bordered_grid' => woodmart_get_opt( 'products_bordered_grid' ),'custom_sizes' => apply_filters( 'woodmart_product_related_custom_sizes',false ),'product_quantity' => woodmart_get_opt( 'product_quantity' )
);
woodmart_set_loop_prop( 'products_view','carousel' );
echo woodmart_generate_posts_slider( $slider_args,false,$related_products );
}elseif ( $related_product_view == 'grid' ) {
woodmart_set_loop_prop( 'products_columns',woodmart_get_opt( 'related_product_columns' ) );
woodmart_set_loop_prop( 'products_different_sizes',false );
woodmart_set_loop_prop( 'products_masonry',false );
woodmart_set_loop_prop( 'products_view','grid' );
woocommerce_product_loop_start();
foreach ( $related_products as $related_product ) {
$post_object = get_post( $related_product->get_id() );
setup_postdata( $GLOBALS['post'] = $post_object );
wc_get_template_part( 'content','product' );
}
woocommerce_product_loop_end();
woodmart_reset_loop();
if ( function_exists( 'woocommerce_reset_loop' ) ) woocommerce_reset_loop();
}
?>
</div>
<?php endif;
wp_reset_postdata();
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。