OpenGL/GLSL 4.5 on Ubuntu 19.04, Intel Integrated GraphicsHow to upgrade Intel Graphics driver?Can't update OpenGL on Ubuntu 16.04GLSL 3.30 is not supported (Ubuntu 12.04, Intel HD Graphics 3000 and NVIDIA Graphics with Optimus)Intel HD4000 and yet only OpenGL 3.0 (ubuntu 12.04)How to get OpenGL Shader Language 1.4 working with Intel HD Graphics 4000? (Trusty/14.04)

How do successful undergraduate and PhD students differ?

Will the same Javascript fetched by HTTP and HTTPS be cached separately by the browser?

How to prevent discontent among the players when one player murders the others' characters?

Type of capacitor to bridge X10 signals in household power

Is there a Scoville scale for coldness?

Is it safe to drink the water from the fountains found all over the older parts of Rome?

How do I compile something for Linux if I don't have enough space for installing GCC?

How should I analyze this passage? As vii°7, V7, or both?

Applying field calculator for multiple layers at once

Monthly budget screen - need to take into account whether it's early/late in the month

When is it not okay to cheap out on bike parts?

Why does China have so few nuclear weapons?

Does the production of a Tesla battery produce as much CO2 as driving 200,000 km?

Why is casting a DATE field to VARCHAR datatype non-deterministic and is there a way to make it deterministic?

Selecting point with maximum value for each polygon

I shift the source code, you shift the input!

Did all integrated Commodore PET monitors always use 60 Hz refresh?

Why is there a preference to use the cumulative distribution function to characterise a random variable instead of the probability density function?

Moon's unusual gravity

Was a four year-old forced to sleep on the floor of Leeds General Infirmary?

Why do aircraft cockpit displays use uppercase fonts?

Why is 1>a.txt 2>&1 different from 1>a.txt 2>a.txt ? (Example shown)

Does the basis graph of a matroid determine it?

Why is Trump not being impeached for bribery?



OpenGL/GLSL 4.5 on Ubuntu 19.04, Intel Integrated Graphics


How to upgrade Intel Graphics driver?Can't update OpenGL on Ubuntu 16.04GLSL 3.30 is not supported (Ubuntu 12.04, Intel HD Graphics 3000 and NVIDIA Graphics with Optimus)Intel HD4000 and yet only OpenGL 3.0 (ubuntu 12.04)How to get OpenGL Shader Language 1.4 working with Intel HD Graphics 4000? (Trusty/14.04)






.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty
margin-bottom:0;









1


















I can't seem to get OpenGL 4.5 support on Ubuntu 19.04 with Intel Integrated Graphics. Completely new to working with OpenGL and I'm trying to run some existing code.



When attempting to run the OpenGL code in Python The RuntimeError is:



RuntimeError: 0:1(10): error: GLSL 4.50 is not supported. Supported versions are: 1.10, 1.20, 1.30, 1.00 ES, 3.00 ES, 3.10 ES, and 3.20 ES


the rest of the post will be quite vague but my basic question is; how can I solve this?



If I understand correctly, your OpenGL version determines which versions of GLSL are supported. Your support for OpenGL is determined by the hardware, in which case you need to source the correct drivers.



My Intel CPU provides UHD Graphics 630 which (according to this page) should support OpenGL 4.5 with the appropriate drivers.



Screenshot of the table in case the link goes dead for some reason



On a fresh Ubuntu 19.04 installation glxinfo | grep "OpenGL version" returns OpenGL version string: 3.0 Mesa 19.0.8. Which I'm reading as "OpenGL Version 3.0 implementation provided by Mesa 19.0.8". In searching for a solution I found this post on askubuntu which provides instructions for upgrading the Intel graphics driver on Ubuntu using a ppa. Details are on that post but to upgrade to the new drivers it was:



sudo add-apt-repository ppa:oibaf/graphics-drivers



sudo apt update && sudo apt upgrade



Now glxinfo | grep "OpenGL version" gives me OpenGL version string: 3.0 Mesa 19.3.0-devel (git-ffb0d3a 2019-09-29 disco-oibaf-ppa) which appears to have a new Mesa version but OpenGL is still at version 3.0. That said, the full output of glxinfo | "OpenGL" I get:



OpenGL vendor string: Intel Open Source Technology Center
OpenGL renderer string: Mesa DRI Intel(R) UHD Graphics 630 (Coffeelake 3x8 GT2)
OpenGL core profile version string: 4.6 (Core Profile) Mesa 19.3.0-devel (git-ffb0d3a 2019-09-29 disco-oibaf-ppa)
OpenGL core profile shading language version string: 4.60
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
OpenGL version string: 3.0 Mesa 19.3.0-devel (git-ffb0d3a 2019-09-29 disco-oibaf-ppa)
OpenGL shading language version string: 1.30
OpenGL context flags: (none)
OpenGL extensions:
OpenGL ES profile version string: OpenGL ES 3.2 Mesa 19.3.0-devel (git-ffb0d3a 2019-09-29 disco-oibaf-ppa)
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20
OpenGL ES profile extensions:



which shows a core profile version and core profile shading language version of 4.6? What are the differences between the core entries and the non-core entries in the terminal output above?



I can post the GLSL code but I don't think it'll be useful as it's not a code issue (I know this code runs fine on machines which have the correct OpenGL setup, the setup is the bit I'm struggling with!)



If there's problems with the question, please mark it as such and I'll attempt to address them. Any and all help appreciated. Thanks!










share|improve this question



























  • Firstly GLSL != GL and 4.50 != 4.5. That said, In your glxinfo output, you can see core profile version string is 4.6 and the shading language version string is 4.60 so it should be working. It seems whatever you are using is checking the versions incorrectly.

    – dobey
    Sep 30 at 16:01











  • When you create an OpenGL context in your application, be sure to create a core profile context, not compatibility, and you should be able to use OpenGL 4.5.

    – SurvivalMachine
    Sep 30 at 17:37











  • This was it, the version of pygame I was using was loading the compatibility version.

    – R. Mitchell
    Oct 1 at 14:42

















1


















I can't seem to get OpenGL 4.5 support on Ubuntu 19.04 with Intel Integrated Graphics. Completely new to working with OpenGL and I'm trying to run some existing code.



When attempting to run the OpenGL code in Python The RuntimeError is:



RuntimeError: 0:1(10): error: GLSL 4.50 is not supported. Supported versions are: 1.10, 1.20, 1.30, 1.00 ES, 3.00 ES, 3.10 ES, and 3.20 ES


the rest of the post will be quite vague but my basic question is; how can I solve this?



If I understand correctly, your OpenGL version determines which versions of GLSL are supported. Your support for OpenGL is determined by the hardware, in which case you need to source the correct drivers.



My Intel CPU provides UHD Graphics 630 which (according to this page) should support OpenGL 4.5 with the appropriate drivers.



Screenshot of the table in case the link goes dead for some reason



On a fresh Ubuntu 19.04 installation glxinfo | grep "OpenGL version" returns OpenGL version string: 3.0 Mesa 19.0.8. Which I'm reading as "OpenGL Version 3.0 implementation provided by Mesa 19.0.8". In searching for a solution I found this post on askubuntu which provides instructions for upgrading the Intel graphics driver on Ubuntu using a ppa. Details are on that post but to upgrade to the new drivers it was:



sudo add-apt-repository ppa:oibaf/graphics-drivers



sudo apt update && sudo apt upgrade



Now glxinfo | grep "OpenGL version" gives me OpenGL version string: 3.0 Mesa 19.3.0-devel (git-ffb0d3a 2019-09-29 disco-oibaf-ppa) which appears to have a new Mesa version but OpenGL is still at version 3.0. That said, the full output of glxinfo | "OpenGL" I get:



OpenGL vendor string: Intel Open Source Technology Center
OpenGL renderer string: Mesa DRI Intel(R) UHD Graphics 630 (Coffeelake 3x8 GT2)
OpenGL core profile version string: 4.6 (Core Profile) Mesa 19.3.0-devel (git-ffb0d3a 2019-09-29 disco-oibaf-ppa)
OpenGL core profile shading language version string: 4.60
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
OpenGL version string: 3.0 Mesa 19.3.0-devel (git-ffb0d3a 2019-09-29 disco-oibaf-ppa)
OpenGL shading language version string: 1.30
OpenGL context flags: (none)
OpenGL extensions:
OpenGL ES profile version string: OpenGL ES 3.2 Mesa 19.3.0-devel (git-ffb0d3a 2019-09-29 disco-oibaf-ppa)
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20
OpenGL ES profile extensions:



which shows a core profile version and core profile shading language version of 4.6? What are the differences between the core entries and the non-core entries in the terminal output above?



I can post the GLSL code but I don't think it'll be useful as it's not a code issue (I know this code runs fine on machines which have the correct OpenGL setup, the setup is the bit I'm struggling with!)



If there's problems with the question, please mark it as such and I'll attempt to address them. Any and all help appreciated. Thanks!










share|improve this question



























  • Firstly GLSL != GL and 4.50 != 4.5. That said, In your glxinfo output, you can see core profile version string is 4.6 and the shading language version string is 4.60 so it should be working. It seems whatever you are using is checking the versions incorrectly.

    – dobey
    Sep 30 at 16:01











  • When you create an OpenGL context in your application, be sure to create a core profile context, not compatibility, and you should be able to use OpenGL 4.5.

    – SurvivalMachine
    Sep 30 at 17:37











  • This was it, the version of pygame I was using was loading the compatibility version.

    – R. Mitchell
    Oct 1 at 14:42













1













1









1








I can't seem to get OpenGL 4.5 support on Ubuntu 19.04 with Intel Integrated Graphics. Completely new to working with OpenGL and I'm trying to run some existing code.



When attempting to run the OpenGL code in Python The RuntimeError is:



RuntimeError: 0:1(10): error: GLSL 4.50 is not supported. Supported versions are: 1.10, 1.20, 1.30, 1.00 ES, 3.00 ES, 3.10 ES, and 3.20 ES


the rest of the post will be quite vague but my basic question is; how can I solve this?



If I understand correctly, your OpenGL version determines which versions of GLSL are supported. Your support for OpenGL is determined by the hardware, in which case you need to source the correct drivers.



My Intel CPU provides UHD Graphics 630 which (according to this page) should support OpenGL 4.5 with the appropriate drivers.



Screenshot of the table in case the link goes dead for some reason



On a fresh Ubuntu 19.04 installation glxinfo | grep "OpenGL version" returns OpenGL version string: 3.0 Mesa 19.0.8. Which I'm reading as "OpenGL Version 3.0 implementation provided by Mesa 19.0.8". In searching for a solution I found this post on askubuntu which provides instructions for upgrading the Intel graphics driver on Ubuntu using a ppa. Details are on that post but to upgrade to the new drivers it was:



sudo add-apt-repository ppa:oibaf/graphics-drivers



sudo apt update && sudo apt upgrade



Now glxinfo | grep "OpenGL version" gives me OpenGL version string: 3.0 Mesa 19.3.0-devel (git-ffb0d3a 2019-09-29 disco-oibaf-ppa) which appears to have a new Mesa version but OpenGL is still at version 3.0. That said, the full output of glxinfo | "OpenGL" I get:



OpenGL vendor string: Intel Open Source Technology Center
OpenGL renderer string: Mesa DRI Intel(R) UHD Graphics 630 (Coffeelake 3x8 GT2)
OpenGL core profile version string: 4.6 (Core Profile) Mesa 19.3.0-devel (git-ffb0d3a 2019-09-29 disco-oibaf-ppa)
OpenGL core profile shading language version string: 4.60
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
OpenGL version string: 3.0 Mesa 19.3.0-devel (git-ffb0d3a 2019-09-29 disco-oibaf-ppa)
OpenGL shading language version string: 1.30
OpenGL context flags: (none)
OpenGL extensions:
OpenGL ES profile version string: OpenGL ES 3.2 Mesa 19.3.0-devel (git-ffb0d3a 2019-09-29 disco-oibaf-ppa)
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20
OpenGL ES profile extensions:



which shows a core profile version and core profile shading language version of 4.6? What are the differences between the core entries and the non-core entries in the terminal output above?



I can post the GLSL code but I don't think it'll be useful as it's not a code issue (I know this code runs fine on machines which have the correct OpenGL setup, the setup is the bit I'm struggling with!)



If there's problems with the question, please mark it as such and I'll attempt to address them. Any and all help appreciated. Thanks!










share|improve this question
















I can't seem to get OpenGL 4.5 support on Ubuntu 19.04 with Intel Integrated Graphics. Completely new to working with OpenGL and I'm trying to run some existing code.



When attempting to run the OpenGL code in Python The RuntimeError is:



RuntimeError: 0:1(10): error: GLSL 4.50 is not supported. Supported versions are: 1.10, 1.20, 1.30, 1.00 ES, 3.00 ES, 3.10 ES, and 3.20 ES


the rest of the post will be quite vague but my basic question is; how can I solve this?



If I understand correctly, your OpenGL version determines which versions of GLSL are supported. Your support for OpenGL is determined by the hardware, in which case you need to source the correct drivers.



My Intel CPU provides UHD Graphics 630 which (according to this page) should support OpenGL 4.5 with the appropriate drivers.



Screenshot of the table in case the link goes dead for some reason



On a fresh Ubuntu 19.04 installation glxinfo | grep "OpenGL version" returns OpenGL version string: 3.0 Mesa 19.0.8. Which I'm reading as "OpenGL Version 3.0 implementation provided by Mesa 19.0.8". In searching for a solution I found this post on askubuntu which provides instructions for upgrading the Intel graphics driver on Ubuntu using a ppa. Details are on that post but to upgrade to the new drivers it was:



sudo add-apt-repository ppa:oibaf/graphics-drivers



sudo apt update && sudo apt upgrade



Now glxinfo | grep "OpenGL version" gives me OpenGL version string: 3.0 Mesa 19.3.0-devel (git-ffb0d3a 2019-09-29 disco-oibaf-ppa) which appears to have a new Mesa version but OpenGL is still at version 3.0. That said, the full output of glxinfo | "OpenGL" I get:



OpenGL vendor string: Intel Open Source Technology Center
OpenGL renderer string: Mesa DRI Intel(R) UHD Graphics 630 (Coffeelake 3x8 GT2)
OpenGL core profile version string: 4.6 (Core Profile) Mesa 19.3.0-devel (git-ffb0d3a 2019-09-29 disco-oibaf-ppa)
OpenGL core profile shading language version string: 4.60
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
OpenGL version string: 3.0 Mesa 19.3.0-devel (git-ffb0d3a 2019-09-29 disco-oibaf-ppa)
OpenGL shading language version string: 1.30
OpenGL context flags: (none)
OpenGL extensions:
OpenGL ES profile version string: OpenGL ES 3.2 Mesa 19.3.0-devel (git-ffb0d3a 2019-09-29 disco-oibaf-ppa)
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20
OpenGL ES profile extensions:



which shows a core profile version and core profile shading language version of 4.6? What are the differences between the core entries and the non-core entries in the terminal output above?



I can post the GLSL code but I don't think it'll be useful as it's not a code issue (I know this code runs fine on machines which have the correct OpenGL setup, the setup is the bit I'm struggling with!)



If there's problems with the question, please mark it as such and I'll attempt to address them. Any and all help appreciated. Thanks!







drivers graphics intel-graphics 19.04 opengl






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Sep 30 at 15:56









K7AAY

7,9925 gold badges23 silver badges52 bronze badges




7,9925 gold badges23 silver badges52 bronze badges










asked Sep 30 at 15:51









R. MitchellR. Mitchell

111 bronze badge




111 bronze badge















  • Firstly GLSL != GL and 4.50 != 4.5. That said, In your glxinfo output, you can see core profile version string is 4.6 and the shading language version string is 4.60 so it should be working. It seems whatever you are using is checking the versions incorrectly.

    – dobey
    Sep 30 at 16:01











  • When you create an OpenGL context in your application, be sure to create a core profile context, not compatibility, and you should be able to use OpenGL 4.5.

    – SurvivalMachine
    Sep 30 at 17:37











  • This was it, the version of pygame I was using was loading the compatibility version.

    – R. Mitchell
    Oct 1 at 14:42

















  • Firstly GLSL != GL and 4.50 != 4.5. That said, In your glxinfo output, you can see core profile version string is 4.6 and the shading language version string is 4.60 so it should be working. It seems whatever you are using is checking the versions incorrectly.

    – dobey
    Sep 30 at 16:01











  • When you create an OpenGL context in your application, be sure to create a core profile context, not compatibility, and you should be able to use OpenGL 4.5.

    – SurvivalMachine
    Sep 30 at 17:37











  • This was it, the version of pygame I was using was loading the compatibility version.

    – R. Mitchell
    Oct 1 at 14:42
















Firstly GLSL != GL and 4.50 != 4.5. That said, In your glxinfo output, you can see core profile version string is 4.6 and the shading language version string is 4.60 so it should be working. It seems whatever you are using is checking the versions incorrectly.

– dobey
Sep 30 at 16:01





Firstly GLSL != GL and 4.50 != 4.5. That said, In your glxinfo output, you can see core profile version string is 4.6 and the shading language version string is 4.60 so it should be working. It seems whatever you are using is checking the versions incorrectly.

– dobey
Sep 30 at 16:01













When you create an OpenGL context in your application, be sure to create a core profile context, not compatibility, and you should be able to use OpenGL 4.5.

– SurvivalMachine
Sep 30 at 17:37





When you create an OpenGL context in your application, be sure to create a core profile context, not compatibility, and you should be able to use OpenGL 4.5.

– SurvivalMachine
Sep 30 at 17:37













This was it, the version of pygame I was using was loading the compatibility version.

– R. Mitchell
Oct 1 at 14:42





This was it, the version of pygame I was using was loading the compatibility version.

– R. Mitchell
Oct 1 at 14:42










1 Answer
1






active

oldest

votes


















0



















Found the issue thanks to SurvivalMachine's comment above. The version of PyGame I was using (1.9.5) was creating the wrong type of context (compatibility) which didn't support GLSL 4.50. This is/was a known issue with PyGame and has been fixed as of PyGame 2.0.0 according to their github. To fix I updated to PyGame 2.0.0.dev3 which allows you to force the correct version of OpenGL to be used when creating the context. See this StackOverflow post (which links to the related github issue) for details.






share|improve this answer


























    Your Answer








    StackExchange.ready(function()
    var channelOptions =
    tags: "".split(" "),
    id: "89"
    ;
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function()
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled)
    StackExchange.using("snippets", function()
    createEditor();
    );

    else
    createEditor();

    );

    function createEditor()
    StackExchange.prepareEditor(
    heartbeatType: 'answer',
    autoActivateHeartbeat: false,
    convertImagesToLinks: true,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: 10,
    bindNavPrevention: true,
    postfix: "",
    imageUploader:
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/4.0/"u003ecc by-sa 4.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    ,
    onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    );



    );














    draft saved

    draft discarded
















    StackExchange.ready(
    function ()
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2faskubuntu.com%2fquestions%2f1177712%2fopengl-glsl-4-5-on-ubuntu-19-04-intel-integrated-graphics%23new-answer', 'question_page');

    );

    Post as a guest















    Required, but never shown


























    1 Answer
    1






    active

    oldest

    votes








    1 Answer
    1






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    0



















    Found the issue thanks to SurvivalMachine's comment above. The version of PyGame I was using (1.9.5) was creating the wrong type of context (compatibility) which didn't support GLSL 4.50. This is/was a known issue with PyGame and has been fixed as of PyGame 2.0.0 according to their github. To fix I updated to PyGame 2.0.0.dev3 which allows you to force the correct version of OpenGL to be used when creating the context. See this StackOverflow post (which links to the related github issue) for details.






    share|improve this answer





























      0



















      Found the issue thanks to SurvivalMachine's comment above. The version of PyGame I was using (1.9.5) was creating the wrong type of context (compatibility) which didn't support GLSL 4.50. This is/was a known issue with PyGame and has been fixed as of PyGame 2.0.0 according to their github. To fix I updated to PyGame 2.0.0.dev3 which allows you to force the correct version of OpenGL to be used when creating the context. See this StackOverflow post (which links to the related github issue) for details.






      share|improve this answer



























        0















        0











        0









        Found the issue thanks to SurvivalMachine's comment above. The version of PyGame I was using (1.9.5) was creating the wrong type of context (compatibility) which didn't support GLSL 4.50. This is/was a known issue with PyGame and has been fixed as of PyGame 2.0.0 according to their github. To fix I updated to PyGame 2.0.0.dev3 which allows you to force the correct version of OpenGL to be used when creating the context. See this StackOverflow post (which links to the related github issue) for details.






        share|improve this answer














        Found the issue thanks to SurvivalMachine's comment above. The version of PyGame I was using (1.9.5) was creating the wrong type of context (compatibility) which didn't support GLSL 4.50. This is/was a known issue with PyGame and has been fixed as of PyGame 2.0.0 according to their github. To fix I updated to PyGame 2.0.0.dev3 which allows you to force the correct version of OpenGL to be used when creating the context. See this StackOverflow post (which links to the related github issue) for details.







        share|improve this answer













        share|improve this answer




        share|improve this answer










        answered Oct 1 at 14:51









        R. MitchellR. Mitchell

        111 bronze badge




        111 bronze badge































            draft saved

            draft discarded















































            Thanks for contributing an answer to Ask Ubuntu!


            • Please be sure to answer the question. Provide details and share your research!

            But avoid


            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.

            To learn more, see our tips on writing great answers.




            draft saved


            draft discarded














            StackExchange.ready(
            function ()
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2faskubuntu.com%2fquestions%2f1177712%2fopengl-glsl-4-5-on-ubuntu-19-04-intel-integrated-graphics%23new-answer', 'question_page');

            );

            Post as a guest















            Required, but never shown





















































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown

































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown









            Popular posts from this blog

            Tamil (spriik) Luke uk diar | Nawigatjuun

            Align equal signs while including text over equalitiesAMS align: left aligned text/math plus multicolumn alignmentMultiple alignmentsAligning equations in multiple placesNumbering and aligning an equation with multiple columnsHow to align one equation with another multline equationUsing \ in environments inside the begintabularxNumber equations and preserving alignment of equal signsHow can I align equations to the left and to the right?Double equation alignment problem within align enviromentAligned within align: Why are they right-aligned?

            Training a classifier when some of the features are unknownWhy does Gradient Boosting regression predict negative values when there are no negative y-values in my training set?How to improve an existing (trained) classifier?What is effect when I set up some self defined predisctor variables?Why Matlab neural network classification returns decimal values on prediction dataset?Fitting and transforming text data in training, testing, and validation setsHow to quantify the performance of the classifier (multi-class SVM) using the test data?How do I control for some patients providing multiple samples in my training data?Training and Test setTraining a convolutional neural network for image denoising in MatlabShouldn't an autoencoder with #(neurons in hidden layer) = #(neurons in input layer) be “perfect”?