Add overlay 3D stl file on 2D image

I added two actor stl files to an imageviewer but the actors are placed behind the 2D image in every view. Is there a way to put the 3D files in front of the 2D image?

here is the code:

#First STL file
        reader = vtk.vtkSTLReader()
        reader.SetFileName(filename)

        self.transform = vtk.vtkTransform()
        self.transform.Scale(1, 1, 1)

        
        self.transformFilter = vtk.vtkTransformPolyDataFilter()
        self.transformFilter.SetTransform(self.transform)
        self.transformFilter.SetInputConnection(reader.GetOutputPort())
        self.transformFilter.Update()

        center = vtk.vtkCenterOfMass()
        center.SetInputData(reader.GetOutput())
        center.SetUseScalarsAsWeights(False)
        center.Update()
        center_x, center_y, center_z = center.GetCenter()
        self.transform.Translate(-center_x, -center_y, -center_z)

        mapper = vtk.vtkPolyDataMapper()
        if vtk.VTK_MAJOR_VERSION <= 5:
            mapper.SetInput(self.transformFilter.GetOutput())
        else:
            mapper.SetInputConnection(self.transformFilter.GetOutputPort())

        self.actor = vtk.vtkActor()


        
        #Second STL file
        reader1 = vtk.vtkSTLReader()
        reader1.SetFileName(filename1)

        
        self.transform1 = vtk.vtkTransform()
        self.transform1.Scale(1, 1, 1)

        
        self.transformFilter1 = vtk.vtkTransformPolyDataFilter()
        self.transformFilter1.SetTransform(self.transform1)
        self.transformFilter1.SetInputConnection(reader1.GetOutputPort())
        self.transformFilter1.Update()

        center1 = vtk.vtkCenterOfMass()
        center1.SetInputData(reader1.GetOutput())
        center1.SetUseScalarsAsWeights(False)
        center1.Update()
        center1_x, center1_y, center1_z = center1.GetCenter()
        self.transform1.Translate(-center1_x, -center1_y, -center1_z)

        mapper1 = vtk.vtkPolyDataMapper()
        if vtk.VTK_MAJOR_VERSION <= 5:
            mapper1.SetInput(self.transformFilter1.GetOutput())
        else:
            mapper1.SetInputConnection(self.transformFilter1.GetOutputPort())


        self.actor1 = vtk.vtkActor()

        self.vtkwidget = QVTKRenderWindowInteractor(self.centralwidget)
        self.gridLayout.addWidget(self.vtkwidget, 0, 0, 1, 1)


        self.ren = vtk.vtkRenderer()
        self.vtkwidget.GetRenderWindow().AddRenderer(self.ren)
        self.iren = self.vtkwidget.GetRenderWindow().GetInteractor()
        
        #X ray File
        reader3 = vtk.vtkDICOMImageReader()
        reader3.SetDirectoryName(pathDicomDir)
        reader3.Update()
        extent = reader3.GetOutput().GetExtent()
        spacing = reader3.GetOutput().GetSpacing()

        print(extent)
        print(spacing)
        
        viewer = vtk.vtkResliceImageViewer()
        viewer.SetInputData(reader3.GetOutput())
        viewer.SetRenderWindow(self.vtkwidget.GetRenderWindow())
        viewer.Render()
        

        self.actor.SetMapper(mapper)
        self.actor1.SetMapper(mapper1)
    
        viewer.GetRenderer().AddActor(self.actor)
        viewer.GetRenderer().AddActor(self.actor1)

        self.iren.Start()

and here is the picture: