脊柱CT图像分割,结果指标低

我首先试讲nii转为png切片保存,将脊柱数据集导入模型(之前做皮肤病的模型)后发现效果不好,是有什么需要在代码中更改参数吗,求大家指点

  • 这篇博客: 目标人脸检测与识别(计算机视觉)中的 代码:(注意对图像的像素要求很高,如xiao1.png像素都控制在120*160) 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • renlianjiance1.py: #DNN人脸检测

    import cv2

    import numpy as np

    from matplotlib import pyplot as plt

    dnnnet = cv2.dnn.readNetFromTensorflow("opencv_face_detector_uint8.pb", "opencv_face_detector.pbtxt")

    img = cv2.imread("xiaolihao.png")                     #读取图像

    h, w = img.shape[:2]                                #获得图像尺寸

    blobs = cv2.dnn.blobFromImage(img, 1.0, (300, 300),     #创建图像的块数据

                           [104., 117., 123.], False, False)

    dnnnet.setInput(blobs)                               #将块数据设置为输入

    detections = dnnnet.forward()                         #执行计算,获得检测结果

    faces = 0

    j=0

    for i in range(0, detections.shape[2]):        #迭代,输出可信度高的人脸检测结果

        confidence = detections[0, 0, i, 2]       #获得可信度

        if confidence > 0.6:                  #输出可行度高于80%的结果

            faces += 1

            box = detections[0, 0, i, 3:7] * np.array([w, h, w, h]) #获得人脸在图像中的坐标

            x1,y1,x2,y2 = box.astype("int")       

            y = y1 - 10 if y1 - 10 > 10 else y1 + 10            #计算可信度输出位置

            text = "%.3f"%(confidence * 100)+'%'

            cv2.rectangle(img, (x1, y1), (x2, y2), (255, 0, 0), 2)  #标注人脸范围

            img2=img[ y1: y2,x1 : x2 ]

            cv2.imwrite(str(j)+".jpg",img2)

            j=j+1

            cv2.putText(img,text, (x1, y),                    #输出可信度

                            cv2.FONT_HERSHEY_SIMPLEX, 0.9, (0, 0, 255), 2)

    cv2.imshow('faces',img)

    cv2.waitKey(0)

    renlianshibie2.py:

    # 使用EigenFaces人脸识别器

    import cv2

    import numpy as np

    #读入训练图像

    img11=cv2.imread('xiao0.png',0)                         #打开图像,灰度图

    img12=cv2.imread('xiao1.png',0)                         #打开图像,灰度图

    img21=cv2.imread('xiao2.png',0)                         #打开图像,灰度图

    img22=cv2.imread('xiao3.png',0)                         #打开图像,灰度图

    train_images=[img11,img12,img21,img22]                 #创建训练图像数组

    labels=np.array([1,2,3,4])       #创建标签数组,0~1表示训练图像数组中人脸的身份

    recognizer=cv2.face.EigenFaceRecognizer_create()    #创建EigenFaces识别器

    recognizer.train(train_images,labels)                       #执行训练操作

    testimg=cv2.imread('test2.png',0)                          #打开测试图像

    label,confidence=recognizer.predict(testimg)                 #识别人脸

    print('匹配标签:',label)

    print('可信程度:',confidence)

    b=label

    if b==1:

        cv2.imwrite('biaoji.png',img11)

    elif b==2:

        cv2.imwrite('biaoji.png',img12)

    elif b==3:

        cv2.imwrite('biaoji.png',img21)

    elif b==4:

        cv2.imwrite('biaoji.png',img22)