La toile est cool ! - page 65

 
Nikolai Semko:
Eh bien, très brièvement, Artem, j'avais l'habitude de percevoir un pixel comme un carré avec le calcul de sa participation pondérale dans un pixel d'une nouvelle échelle par la surface, maintenant je le percevrais comme un cercle avec le calcul de sa participation pondérale par la distance au centre d'un pixel d'une nouvelle échelle.
Merci, c'est intéressant.
 
Nikolai Semko:

J'ai donné un exemple du codeici. Mais le code est loin d'être parfait. Je le ferais complètement différemment maintenant.


Oh, wow ! J'ai changé le code un peu. J'ai retiré la fonction de redimensionnement de la classe pour la placer dans un fichier séparé à usage universel et j'ai ajouté la possibilité de redimensionner de façon disproportionnée.
Dossiers :
ImageResize.zip  384 kb
 
Nikolay Kositsin:
Incroyable ! J'ai modifié un peu le code. J'ai retiré la fonction de redimensionnement de la classe pour la placer dans un fichier séparé à usage universel et j'ai ajouté la possibilité d'un redimensionnement disproportionné.

Eh bien, en fait, l'algorithme est terrible. Je me souviens l'avoir écrit en une journée uniquement pour le tester, pour le faire fonctionner et voir comment la couleur est préservée lors de la transformation.
Il est très lent (vous pouvez voir des clignotements et je me souviens de quelques pépins), mais il y a un grand potentiel pour l'accélérer plusieurs fois.
Maintenant, pour réécrire ce redimensionnement, sur la base des connaissances et de l'expérience que j'ai acquises après ce code, je pense que cela me prendra trois jours.
Mais peut-être serait-il préférable de trouver quelque chose de tout fait au lieu de réinventer la roue.
Par exemple, voici une bibliothèque gratuite en C++, c'est une vieille bibliothèque, mais elle fonctionne bien.
https://drive.google.com/file/d/1BceTk-OrtQza0Hpozhm1nqAcNkRdeNH5/view?usp=sharing
Regardez l'exemple de démonstration image_perspective.



 
Nikolai Semko:

Eh bien, en fait, l'algorithme est terrible. Je me souviens l'avoir écrit en une journée uniquement pour le tester, pour voir comment la couleur est conservée pendant la transformation.
Il est très lent (vous pouvez voir des clignotements et je me souviens de quelques pépins), mais il y a un grand potentiel pour l'accélérer plusieurs fois.
Maintenant, pour réécrire ce redimensionnement, sur la base des connaissances et de l'expérience que j'ai acquises après ce code, je pense que cela me prendra trois jours.
Mais peut-être serait-il préférable de trouver quelque chose de tout fait au lieu de réinventer la roue.
Par exemple, voici une bibliothèque gratuite en C++, elle est ancienne, mais fonctionne bien.
https://drive.google.com/file/d/1BceTk-OrtQza0Hpozhm1nqAcNkRdeNH5/view?usp=sharing
Regardez l'exemple de démonstration image_perspective.


En fait, c'est ce qu'il était censé faire, mais il s'est avéré que sur ce sujet en particulier, sur Internet, toutes les informations étaient en quelque sorte mitées. Je ne sais pas si le propriétaire du lien donnera la permission de le télécharger ou non.
 
Nikolay Kositsin:
En fait, c'est ce qu'il était censé faire, mais il s'est avéré que sur ce sujet particulier sur Internet, toutes les informations étaient en quelque sorte mitées. Pour le lien merci, mais il est codé et si le propriétaire du lien la permission de télécharger - il n'est pas clair.

Corrigé. Il s'ouvre sans mot de passe.

 
Nikolai Semko:

Je suis d'accord avec Renat que même l'utilisation du CPU pour la sortie graphique couvre plus de 99% de toutes les tâches graphiques dans la zone de tâches de MQL5.

J'ai une charge CPU importante sur l'interface graphique du terminal lui-même.

 
Nikolai Semko:

Corrigé. Il s'ouvre sans mot de passe.

Nikolaï, de quel côté de la bibliothèque dois-je creuser ? Je l'ai sondé avec toutes les méthodes d'analyse disponibles, mais je n'ai pas trouvé de redimensionnement ou de rééchantillonnage des matrices de pixels et des images.
 
fxsaber:

L'interface graphique du terminal est très sollicitée par le processeur.

Ryzen 3700x et GTX1060 font également la différence pour rouler ou non, les développeurs vont avec le temps réduisant la réactivité plus proche du temps réel, il est temps de changer votre ancien processeur, 2700K n'est-ce pas ?

 
Fast235:

Ryzen 3700x et GTX1060 font également une différence pour rouler ou non, les développeurs vont avec le temps réduisant la réactivité plus proche du temps réel, il est temps de changer votre ancien processeur, 2700K comme?

Oui. Je ne pense pas que les développeurs aient jamais fait tourner cinq Terminaux en parallèle, où des cotiers à haute fréquence d'une centaine de caractères chacun arrivent dans la Revue du Marché.

Cela apparaît très bête lorsqu'une minimisation triviale de ces terminaux réduit une charge CPU importante à presque rien. La raison pour laquelle une interface graphique aussi irrationnellement consommatrice de CPU est nécessaire n'est pas claire.

 
fxsaber:

Oui. Je ne pense pas que les développeurs aient jamais fait fonctionner cinq terminaux en parallèle, où la surveillance du marché à haute fréquence a des centaines de caractères chacun.

Cela apparaît très bête lorsqu'une minimisation triviale de ces terminaux réduit une charge CPU importante à presque rien. La raison d'une telle consommation irrationnelle de l'interface graphique est incompréhensible.

ils respectent le dresscode, google il y a une quantité incroyable de défauts évidents pour tout le monde, mais tout est négligé, MQ est très désireux d'être comme ces géants.