Pycharm gives this error: "process finished with exit code -1073741819 (0xc0000005)"

Pycharm gives this error: "process finished with exit code -1073741819 (0xc0000005)"

我正在尝试使用 Pycharm 中的库 tvb-gdist 来计算多个网格中的测地线距离。只需安装它:

pip install tvb-gdist

然而,由于某些原因,它只适用于其中的一部分。我使用很多网格,但我将只向您展示一个示例,其中有 2 个用于简化(这里是 link 到包含文件的文件夹:https://drive.google.com/drive/folders/1dFKc8wdQuFaUNa3EIKdS7eTj6WVwwZFn?usp=sharing)。函数“gdist.local_gdist_matrix”将网格的顶点和面作为输入,当对由“vertices2”和“faces2”形成的网格执行它时,它工作得很好。但是,当使用由“顶点”和“面”形成的网格时,会出现错误并且 python 控制台会关闭。整个代码相当大,但这是我开发的用于读取文件并轻松重现错误的代码:

import csv
import gdist

file = open('faces.csv')
csvreader = csv.reader(file)
faces = []
for row in csvreader:
        faces.append(row)
file.close()

file = open('vertices.csv')
csvreader = csv.reader(file)
vertices = []
for row in csvreader:
        vertices.append(row)
file.close()

file = open('faces2.csv')
csvreader = csv.reader(file)
faces2 = []
for row in csvreader:
        faces2.append(row)
file.close()

file = open('vertices2.csv')
csvreader = csv.reader(file)
vertices2 = []
for row in csvreader:
        vertices2.append(row)
file.close()

vertices2 = np.array(vertices2).astype('float64')
faces2 = np.array(faces2).astype('int32')
aux_distances2 = gdist.local_gdist_matrix(vertices2, faces2, max_distance=12)

vertices = np.array(vertices).astype('float64')
faces = np.array(faces).astype('int32')
aux_distances = gdist.local_gdist_matrix(vertices, faces, max_distance=12)

如果您先 运行 直到“aux_distances2”,您会发现不会出现任何问题,并且会返回所需的矩阵。但是,当 运行ing "aux_distances" 时,出现错误“进程已完成,退出代码为 -1073741819 (0xc0000005)”,并且控制台崩溃。我相信,因为它适用于某些文件,问题不可能出在 python 版本或与文件路径相关的东西(它们在同一目录下),但任何事情都是可能的。我认为这可能与面 and/or 顶点的数量有关,但我使用库“quad_mesh_simplify”进行了网格抽取,并且在重新网格化完成后出现了同样的错误。我还尝试在 Google Colab 的笔记本中 运行 它来检查 Pycharm 是否是问题,但结果是一样的:对于第二个网格它工作得很好但是对于第一个网格它崩溃了。错误显示:“KernelRestarter:重新启动内核(1/5),保留随机端口”,然后是“警告:root:内核 0c24cfc6-3530-4211-a4d2-b147c3444581 重新启动”。我已经尝试了我找到的所有解决方案,并且 none 的解决方案有效,所以如果有人可以帮助我,我将不胜感激。

我想你指的是这里的 tvb-gdisthttps://github.com/the-virtual-brain/tvb-gdist

我自己测试过,可以重现问题

我认为你是对的,这不是安装,也不是 IDE 的罪魁祸首。 我怀疑表面有问题。使用 tvb 软件进行的小检查显示以下警告。

你能改变表面并消除它的问题(挤压面和可能的小孔)吗?我怀疑这些照片在 tvb-gdist.

中产生了一个无限循环
2022-04-26 05:34:01,630 - WARNING [proc:21055]  - tvb.datatypes.surfaces - Surface is pinched off.
2022-04-26 05:34:01,630 - DEBUG [proc:21055]  - tvb.datatypes.surfaces - These are edges with more than 2 triangles: 
[ 11022  11023  11033  11035  11036  11273  11280  11488  11489  11494
  11495  11508  11509  11516  11517  11753  11759  11770  11775  11782
  11976  11994  12238  12240  12247  12253  12279  12283  12485  12486
  12490  12491  12495  12498  12519  12746  12747  12752  12753  12778
  12781  12991  13033  13037  13045  13249  13250  13256  13258  13266
  13317  13549  13572  13577  13761  13803  14031  14034  14037  14084
  14319  14541  14589  14780  14784  15036  15286  15287  15293  15553
  15559  15801  15804  15814  15815  15822  15826  16121  16335  16336
  16632  16633  16636  16857  16866  17167  17169  17423  17717  17720
  17993  18292  18561  18853  18854  19155  19159  19170  19763  19765
  20093  20364  20685  20689  20984  21317  21602  21604  21978  22283
  22288  22637  22961  23330  23709  23711  23721  24110  24436  24444
  24865  25228  25234  25235  25674  25677  26061  26534  26921  26926
  27380  27764  27769  28620  29051  29440  29899  29907  30678  30683
  31028  31034  31495  31818  32303  32310  33042  33416  33418  33430
  34170  34567  34571  34932  35327  35679  36083  36453  36457  36857
  37213  38011  38443  38812  38815  38824  39347  39350  39632  39639
  40060  40131  40138  40140  40406  40492  40841  40843  40851  40923
  40928  41598  41603  41675  41682  41955  42025  42323  42329  42397
  42676  43056  43119  43126  43425  43432  43488  43872  44168  44171
  44237  44570  44621  44940  44996  45002  45335  45689  45735  45741
  46092  46099  46516  46522  46884  46887  46902  46904  46908  46910
  47275  47289  47295  47296  47325  47726  47735  47736  47740  47744
  47745  47758  47790  47796  48110  48118  48126  48132  48139  48152
  48153  48158  48160  48167  48170  48179  48181  48185  48579  48583
  48605  48610  48611  48612  48616  48622  48628  48632  48653  49030
  49038  49050  49051  49080  49086  49089  49100  49101  49106  49108
  49568  49588  49593  49610  49620  49627  49631  50042  50047  50060
  50061  50076  50598  50602  50603  50607  50613 118407 118416 118571
 118574 118578 118926 118932 119068 119276 119387 119496 119499 119503
 119606 119695 119811 119987 120165 120336 120482 120488 120797 120928
 121081 121174 121185 121325 121391 121588 121607 121716 121780 121859
 122210 122224 122337 122516 122518 122636 122750 122826 122832 123024
 123103 123136 123223 123378 123385 123435 123436 123449 123474 123589
 123760 123766 123799 123833 123933 123953 123963 123966 123967 123975
 123976 124142 124143 124152 124161 124168 124284 124297 124482 124484
 124485 124493 124501 124642]
2022-04-26 05:34:01,631 - WARNING [proc:21055]  - tvb.datatypes.surfaces - Has holes.
2022-04-26 05:34:01,631 - DEBUG [proc:21055]  - tvb.datatypes.surfaces - Free boundaries: 
[108104 108106 108391 108430 117047 117051 117057 117068]