sem-geologist / HussariX

HussariX - software to open/ read and view Cameca EPMA and Bruker SEM formats, track samples in μ-space and time.
GNU General Public License v3.0
8 stars 2 forks source link

spectrum_widget_Qt5 is missing #1

Closed ricounet67 closed 3 years ago

ricounet67 commented 3 years ago

Hi, It seems that the spectrum_widget_Qt5.py is missing Is it possible to get it? Thank you Best regards

sem-geologist commented 3 years ago

Hi, There is two branches, working-prototype and master. working-prototype has that missing file. In master it was renamed into SpectrumWidgets.py (previously it had Qt5 in name as I was migrating from Qt4).

What is your interest in this code?

I had updated master branch yesterday, so try updating, If You want to look into wdsDat, there is now better way than working-prototype. Hussarix.py in master branch will do it more fluently. Please mind that SpectrumWidgets.py is still not feature complete. There is still no way to burn over the spectral line annotations, only preview (hover over) mode works currently (it does not work in wavelength x-axis mode). I plan to implement those features after I will find sufficient good X-ray line/edges database (there is plenty good enough for EDS, but not for WDS, and currently this uses database from DTSA-II/epq, which lacks lots of details and precision).

ricounet67 commented 3 years ago

Hi,

Thank you, I will take a look.

I am interested in this code because I am microanalyst and I work with a CAMECA SX100 probe. I am looking for a free software to open, visualize and maybe treat the CAMECA files. It could be interesting for the other researchers of the lab or simply for me when I am not on the microprobe computer.

If you need some CAMECA files maybe I can share some with you ? What are you looking for ?

sem-geologist commented 3 years ago

You come at right place, maybe a bit at wrong time :) This software is still in very "work in progress" state; currently only wdsDat can be opened and visualised, as that is the most missing feature in the vendor software. I mean not bare "open", but batch open and easily compare wds scans from different files and datasets (Hussarix), without needing to import scans into single dataset (that is how cameca peaksight works currently and old versions). The idea is not just to make free clone of "peaksight results" program, but cross-platform-native (linux'es, windows, osx, BSD's) software with significant improvements at critical/ lacking functionality (and dropping some unneceassary/useless scruff). Ability to overlay multiple wdsDat datasets gives power to see real situation for background position selection. That is comparing strong WDS peaks (high concentration element standard) is crucial for defining proper background possitikns for very complex minerals. That working prototype (with glue logic in jupyter notebook) was serving me well to significantly improve REE analyses. ... But it was working only for our peaksight 6 (on SXFiveFE), and files could not be parsed from version 5 (SX100). peaksight 5 files delayed this project for many years, fortunately reverse engineering of format had been finished recently. (you can look to peaksight-binary-parser, link at README). So if you are using sx100 and files are from peaksight 5, working-prototype branch would not work for you anyway (but most recent master will do).

sem-geologist commented 3 years ago

Oh as for files, that is relevant for peaksight-binary-parser repository; I operate two generation machines with Peaksight software 5 and 6.4, thus got quite huge set of datasets to cover most of everything for reverse engineer it. I have no Peaksight 4 files. Also most of my files are produced but not intensively mingled after aquisition with peaksight. Peaksight has all kind of bells and whistles, and it can be that my reverse engineering could miss some stuff in these files.

ricounet67 commented 3 years ago

I also work on peaksight v6.5 since I am beta tester for CAMECA. I tried to use the working-prototype with one of my wdsdat spectra and it doesn’t work. Python runs out of memory. Do you have any idea if the problem ? I use anaconda distribution from hyperspy bundle and I have the same behavior on pc and Mac Best regards

Eric LEROY

Le 24 juil. 2021 à 21:08, Petras Jokubauskas @.***> a écrit :  Oh as for files, that is relevant for peaksight-binary-parser repository; I operate two generation machines with Peaksight software 5 and 6.4, thus got quite huge set of datasets to cover most of everything for reverse engineer it. I have no Peaksight 4 files. Also most of my files are produced but not intensively mingled after aquisition with peaksight. Peaksight has all kind of bells and whistles, and it can be that my reverse engineering could miss some stuff in these files.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or unsubscribe.

sem-geologist commented 3 years ago

working-prototype is old, very old. "out of memory" sounds like parsing problem. There is very huge difference in parsing mechanics between working-prototype and master branches. working-prototype parser was hand-written in python, using old-school documenting of binary structures (using hex editor for finding offsets). Peaksight-produced file structures are very dynamic, and that needs much more robust/versatile reverse engineering tools - that is why that old parsing code is abandoned, and master branch switched to a completely new approach based on Kaitai Struct descriptive parsing language. Parsing directives are no more in this repository, it is in separate repository: https://github.com/sem-geologist/peaksight-binary-parser . I advice to try master branch (python Hussarix.py), it is enough to have some x-ray lines marked in wdsDat for the old code in working-prototype to derail with parsing, while in the new parser (kaitai-struct-based) most of these are parsed correctly. If You will get "out of memory" error with master branch (HussariX.py), then please open the issue in peaksight-binary-parser repository, and upload minimal wdsDat file there. (Cameca tends to add some binary structs with every next version of peaksight, and that could be a problem). As You mention of using 6.5, I am actually interested in all type of files, as that would allow to enlarge the versions up to Peaksight 6.6 (next release version).

ricounet67 commented 3 years ago

I still have problem with HussariX.py Maybe it comes from the packages installed on my computer. What are the versions in yours ?

sem-geologist commented 3 years ago

could You paste the error message?

libraries which I have: pyqtgraph 0.11.0; kaitaistruct 0.9; numpy 1.17.4; PyQt5 5.15.4;

ricounet67 commented 3 years ago

here is the error message Traceback (most recent call last): File "D:\OneDrive - UPEC\QSEM-viewer\HussariX.py", line 12, in from lib.ui import SpectrumWidgets as sw File "D:\OneDrive - UPEC\QSEM-viewer\lib\ui\SpectrumWidgets.py", line 50, in from .CustomPGWidgets import CustomViewBox, CustomAxisItem File "D:\OneDrive - UPEC\QSEM-viewer\lib\ui\CustomPGWidgets.py", line 181, in class selectablePolygon(selectableMarker, QtGui.QGraphicsPolygonItem): AttributeError: module 'PyQt5.QtGui' has no attribute 'QGraphicsPolygonItem'

pyqtgraph 0.12.2 kaitaistruct 0.9 numpy 1.21.1 pyqt 5.12.3 python 3.9.6 (anaconda distribution)

ricounet67 commented 3 years ago

I installed the same versions of libraries as you and now it works !

sem-geologist commented 3 years ago

I missed your second issue, now it is properly fixed, sorry for inconvenience. It should work now with your initial libraries.

sem-geologist commented 3 years ago

@ricounet67 , can we close this?

ricounet67 commented 3 years ago

Yes. Sorry I was in vacation.

Le ven. 3 sept. 2021 à 15:18, Petras Jokubauskas @.***> a écrit :

@ricounet67 https://github.com/ricounet67 , can we close this?

— You are receiving this because you were mentioned.

Reply to this email directly, view it on GitHub https://github.com/sem-geologist/QSEM-viewer/issues/1#issuecomment-912533590, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAIKHNAYETL6ZL6RCHJMAHDUADDK5ANCNFSM5A4DZOPA .

-- Éric Leroy