Funny version? The Japanese media ranked the men’s singles, Malone was fourth, and Fan Zhendong didn’t make it into the top five. The first was not unexpected.

At present, the Chengdu World Table Tennis Championships, which has attracted the attention of table tennis fans all over the world, has decided the final king. China Guoping, the king of the world table tennis world, won the championship of men’s team and women’s team without accident. This result is also the embodiment of Guoping’s top strength. However, although the champion belongs to Guoping, for some defeated players of Guoping, they have to find something else to show their unconvinced. No, Japanese table tennis, which has been suppressed by national table tennis, came back to China, and the Japanese media released a list of male table tennis players in the World Table Tennis Championships. Funny thing is, in this list, Malone, who won all seven games in the World Table Tennis Championships, was directly ranked fourth. At present, Fan Zhendong, which ranks first in the world, is directly ignored by the Japanese media, and can’t even enter the top five. As for the number one player, I believe you should have guessed it.

Chengdu World Table Tennis Championships, as a major competition this season, almost all the top table tennis players in the world came to Chengdu to participate in this table tennis feast. As the host country and the top table tennis team in the world, Guoping is naturally the favorite of the champion. However, neither the men’s team nor the women’s team let the fans down. In their own home court, Guoping won two championships in a sweeping way. Of course, compared with the women’s team, there are still some waves in the men’s team’s championship.

In the semi-final with the Japanese men’s team, the China men’s team encountered the biggest challenge since the start of the game. Japan’s first brother, Chinese-American Zhang Benzhi, is in very good shape in this World Table Tennis Championships, especially in this Sino-Japanese table tennis semi-final. In order to test Wang Chuqin, the national table tennis coaching staff arranged for Wang Chuqin to serve as the second single against Zhang Benzhihe. Wang Chuqin, like Zhang Benzhihe, is a post-00 player, which can also be regarded as a confrontation between new forces in the future table tennis world. But what I didn’t expect was that Wang Chuqin lost completely in this post-00 showdown.

If Wang Chuqin’s loss is understandable, then the number one player in the world, the key player of China team, the loss of a single Fan Zhendong made the fans feel nervous. In the face of Zhang Benzhihe, Fan Zhendong lost his former swagger and was defeated by Zhang Benzhihe. In the end, although Guoping still relied on its overall strength, it eliminated the Japanese team and advanced to the final. However, this five-game game still made many fans sigh: Fortunately, there is only one Japanese team, Zhang Benzhi and He.

It was Zhang Benzhihe’s performance that completely stunned the Japanese media after the game. After the World Table Tennis Championships, the Japanese media "Tokyo Satellite TV" produced a ranking of men’s table tennis strength in the World Table Tennis Championships. To tell you the truth, this ranking is a bit interesting. He is convinced of the players’ victory in the World Table Tennis Championships as a basis for ranking. In other words, whoever wins more games will be in the top position. That’s right, there is such a funny situation. No one of the main players in table tennis can enter the top three. After all, the seven wins of seven battles, which are as strong as Malone’s, can only be ranked fourth because of too few wins. Fan Zhendong, the number one in the world, can’t even get into the top five in this ranking.

Not surprisingly, in this ranking, the number one player in Japan’s team is naturally Zhang Benzhi and He. He ranked first with 11 wins and 1 loss, and was called the strongest men’s singles player in this World Table Tennis Championships. The second place is Huang Zhen Ting, a Hong Kong player from China who scored 8 wins and 3 losses. The third place is Qiu Dang from Germany, whose record is 8 wins and 4 losses.

To be honest, this ranking is totally unreasonable. After all, because of the strength of national table tennis, all the five main players have strong strength, basically taking turns to play. In this way, Malone’s chances of playing will naturally be less. However, Malone only played seven games, but he won all. Just because he played a few games less than Zhang Benzhi, is he weaker than Zhang Benzhi in strength? It can only be said that this is just the self-satisfaction of the Japanese media, which specially found an angle that is beneficial to Japanese players to make such a ranking. However, it is difficult for them to think of such an angle.

President china portrait photography society and his party visited Meitu Company for a discussion.

Recently, Mr. Yan Taichang, Chairman of china portrait photography society, Mr. Han Yuezhi, Vice Chairman of china portrait photography society and Chairman of Post-production Professional Committee, Mr. Liang Jiande, Vice Chairman of china portrait photography society and Chairman of Cosmetic Modeling Professional Committee, and their delegation visited Meitu Company for exchange and discussion. Also present at the visit and discussion were Xu Chunsheng, Chairman of Platinum Jue Travel Photography Culture Group Co., Ltd., and Pan Baofu, founder of Extraordinary 6+1 Photography Group. Zheng Minglie, Chairman of Wiener Digital Printing Art Industrial Park, He Songlin, Senior Vice President of Meitu Company, Chen Jianyi, Vice President of Products and Xu Qingquan, Head of Meitu Yunxiu, accompanied him to visit and attend the symposium.

In the exhibition hall of Meitu Company, Chairman Yan Taichang and his party learned about the development history, company strategy, corporate culture, product innovation, core technologies and honors of Meitu Company in detail, and experienced the software and hardware products of Meitu, such as Xiu Xiu, Beauty Camera, Wink, Meitu Skin, etc. On the spot, they paid attention to and recognized the innovative products and leading imaging technologies of Meitu Company. During the introduction of Meitu’s corporate strategy, Chairman Yan Taichang and his party learned deeply that at present, Meitu, based on its image core competence, digs more scenes at the C-end, while focusing on the B-end market with SaaS and related businesses as its main focus. Based on Meitu’s continuous investment in scientific and technological innovation, accumulated grasp of the public’s aesthetics over the years, and understanding of the needs of a large number of users, Meitu Yunxiu, a one-stop intelligent retouching solution for the commercial photography industry, is launched. In this regard, Mr. Yan Taichang said that the imaging technology mastered by Meitu can solve the technical problems existing in the portrait photography industry in a targeted manner, and help photographers, retouchers and enterprises to improve retouching efficiency with the help of artificial intelligence technology, and help the standardization construction and digital transformation of the industry.

At the symposium, the two sides had an in-depth sharing and exchange on the current situation, pain points and future development direction of portrait photography industry. With the consumption upgrade of portrait photography industry, all enterprises are facing new opportunities and challenges. Both sides said that since the formal strategic cooperation was reached, through multi-field and high-level in-depth cooperation, more and more photographers and enterprises actively embraced the digitalization of portrait photography, and jointly explored and developed the digital economy with Meitu Yunxiu. "Technology" and "digitalization" are the key words for the development of portrait photography industry. Focusing on china portrait photography society’s leading role in the industry, Meitu Yunxiu will give full play to its technical advantages in the field of imaging technology, actively promote the continuous deepening of cooperation between the two sides, focus on overcoming the shortcomings of the industry, rely on image AI technology, jointly promote the high-quality development of portrait photography industry, and serve high-quality post-retouching to help portrait photography. Help the upstream and downstream industries to realize all-round digital transformation and upgrading. The head photography brands and later brands who participated in this symposium all said that intelligent retouching technology can actually help enterprises reduce costs and improve efficiency, and imaging technology is playing an increasingly important role in portrait photography ecology. Therefore, we should work together to seize the opportunities of digital development, promote the development of new businesses in various fields of the industry, create new formats, explore new modes, and make greater contributions to the digital transformation of portrait photography.

The person in charge of Meitu Yunxiu said that as one of the important strategies of Meitu’s B-end layout, Meitu Yunxiu is committed to promoting the high-quality development of portrait photography industry and serving high-quality post-retouching. Relying on the continuous breakthrough and innovation of imaging technology, Meitu Yunxiu will launch the first multi-terminal adaptation mode in the industry, flexibly adapt to complex equipment and network environment, and provide better and more convenient intelligent retouching services for enterprises and retouchers, helping enterprises achieve cost reduction and efficiency increase.

Since the two sides reached a strategic cooperation in 2022, based on the multi-dimensional cooperation between online and offline, the two sides have achieved a lot. As a strategic partner of china portrait photography society, Meitu Yunxiu will give full play to its advantages in imaging technology and artificial intelligence, further deepen cooperation with china portrait photography society, promote the digital and intelligent development of portrait photography industry, and comprehensively help accelerate the development of digital economy of portrait photography industry in China.

What is the Internet of Things AIoT?

AIoT intelligent internet of things is artificial intelligence internet of things. AIoT is the abbreviation of AI Artificial Intelligence and IoT Internet of Things. It is an artificial intelligence Internet of Things that collects a large amount of data from different dimensions through the Internet of Things and stores it in the cloud. Based on big data analysis and AI and other technologies, it realizes the digitalization and intelligence of everything. Artificial intelligence is a subject that studies how computers can simulate people’s thinking processes and intelligent behaviors. It is based on bionics, the improvement of algorithm model and calculation speed, and the commonality between human neurons and computer doors (doors are the basic unit of computers). Its strength lies in its learning, reasoning, thinking, planning and other abilities, which ordinary intelligent machines can’t do.

The embedded Internet of Things needs to learn a lot, so don’t learn the wrong route and content, which will lead to a salary failure!

Share a data package for free, almost over 150g. The learning content, face classics and projects are relatively new and complete! It is estimated that it will cost at least dozens to buy some fish.

The Internet of Things refers to the real-time collection of any object or process that needs to be monitored, connected and interacted through various devices and technologies such as information sensors, radio frequency identification technology, global positioning system, infrared sensors, laser scanners, etc., and the collection of all kinds of required information such as sound, light, heat, electricity, mechanics, chemistry, biology, location, etc., and the realization of ubiquitous connection, identification and management between things and people through various types of network access. Through this definition, we can feel that this will be a huge database, and the learning process of artificial intelligence also needs a lot of data information. Obviously, this is a link between artificial intelligence and the Internet of Things, which can link them together and play a greater role.

In short, the Internet of Things (IoT) uses terminals with different protocols to carry out information interaction and intelligent processing through a certain agreed protocol, while artificial intelligence can keep learning and become more and more intelligent with data. If artificial intelligence is software, it needs the Internet of Things as a carrier, and if it is hardware, it needs artificial intelligence to drive it. Therefore, we can also regard the Internet of Things as a carrier of artificial intelligence.

The Internet of Things is an important part of the new generation of information technology. The English name is "The Internet of things". Therefore, as the name implies, "the Internet of Things is the Internet of Things". This has two meanings. First, the core and foundation of the Internet of Things is still the Internet, which is the expansion and expansion network based on the Internet. Secondly, its clients expand and expand between any goods, and exchange and communicate information.

for (i=0; i < 8; i++)

{

SetData((data >> i) & 0x1);

SetClockHigh;

for (j=0; j < 5; j++);

SetClockLow;

}

Britain’s "strongest" humanoid robot was born, and its expression is like a real person. Will Hawking’s prediction come true?

Ever since humans realized the importance of robots to human life, they have been focusing on the development of artificial intelligence technology. In these years, the development speed of artificial intelligence technology has been faster and faster, and now there are not only sweeping robots, but even robot attendants.

According to foreign media reports, the humanoid robot developed by a laboratory in the UK appeared in everyone’s sight again. The humanoid robot made a series of human body movements and even smiled in front of the mirror. As soon as the humanoid robot appeared, it was watched by a large number of friends, and its lifelike expressions and actions were once surprising. It can be called the most advanced humanoid robot in the world, and its every move and smile are strikingly similar to others. Once the news spread, it quickly caused a heated discussion among netizens in Guangfa.

After seeing the photos, many netizens will say that if the robot is dressed and put on a hat, it may really think that it is a human being. More people will say that this robot will produce wisdom, and if he has his own wisdom, it will pose a threat to human society. This is not what we are worried about, but what Hawking, a great scientist, once worried about.

Then the question is, if robots are conscious, will they one day replace humans? Will Zeng Lao’s prophecy come true?

Hawking once said when he was alive that he suggested that human beings should not develop robots too vigorously, or they might eventually be destroyed in the hands of robots.

People are conscious, ecstatic, depressed, grateful to those who have helped them, and reflect on their mistakes. People are thinking all the time, producing emotions and thinking all the time. But the robot is not necessarily. After all, it is only controlled by chip technology, and it still depends on people to research and develop it. Humans have the ability to reproduce, but robots haven’t been able to achieve this function yet. There was a famous professor Zeng Lao who boldly predicted that mankind would be destroyed by science and technology. So is the truth really what he said? It is said that science and technology change our lives. How can human beings be destroyed because of science and technology?

It is understood that this humanoid robot developed in the UK can wiggle its shoulders, blink its eyes, even touch its face in front of the mirror, frown and smile. This is not a human being, and the actions it does are what we often do. In addition, we unexpectedly found that the arm joints of humanoid robots are as flexible as those of human beings. If I hadn’t seen its mechanical arm, I would have thought it was a man waving his arm if I had dressed it! However, the walking and moving function of this humanoid robot has yet to be developed. The reason why its facial expression is so realistic is that it is implanted into the human face.

Now, the latest robot developed in the UK is actually regarded as the top robot level. It is the top robot in the world in terms of materials and mechanical technology. Similarly, Japan is also leading in the development of artificial intelligence. Maybe many people know that Japan introduced a beauty robot some time ago, and it can even help Japanese otaku solve their physiological needs. At that time, what they made was very perfect, but they couldn’t make very delicate movements and expressions.

Although technological innovation will bring us infinite convenience, if we rely too much on robots, we will eventually lose our hands-on ability. Robots are artificially developed, developed to serve people and obey human commands. While vigorously developing artificial intelligence, it must be legal and compliant, and robots should be constrained by systems.

According to the current science and technology, it is completely impossible to create robots that are exactly the same as human beings. Robots of this grade can be destroyed instantly even if they have spirituality. What’s more, they themselves are just not too complicated mechanical structures, and they are unlikely to produce spirituality.

Leading the innovation and development of the industry with strength, what did cloud measurement data do right?

For the whole artificial intelligence industry, there is a great demand for AI technology in the fields including driving, security, finance, industry, medical care, education, etc. The rapid development of AI technology based on machine learning depends on the richness of the underlying big data, and a powerful model needs a data set with a large number of samples as its foundation. The quality and diversity of data will have a significant impact on the success or failure of algorithm models. The delivery of high-precision AI data not only helps the AI industry to land in scenes, but also brings a better user experience.

At the data level, with the development of AI technology, the data scale is constantly improving. According to IDC’s calculation, the global data scale will reach 163ZB; in 2025; At the same time, the AI data service industry has entered the stage of deep customization, and the service of data customization is carried out according to different scenarios and requirements, and the AI data requirements also transition from general simple scenarios to personalized scenarios.

In order to solve the practical problem of AI industrialization, cloud measurement data summed up many experiences and solutions, and used them in practice to help the development of the whole artificial intelligence scene application. Through its own technology, it has overcome the difficulties, designed scientific and standardized data processing processes from task creation to final acceptance, and flexibly met the diverse and high-precision data needs of customers. It has successively launched products and services such as "data scene laboratory", "AI data set management system" and "cloud measurement data annotation platform", providing high-quality, scene-based and large-scale processing of perceived data for many AI-related enterprises such as intelligent driving, smart city, smart home, smart finance and new retail.

Of course, it is not easy to keep the leading position of technology and industry in the tide of artificial intelligence. From the perspective of attack and exploration, it is not difficult to see that the reason why cloud measurement data can become an industry leader is not only due to the toughness of technology and product strength, but also the homeopathic development of service model and service concept, thus continuously injecting new vitality into the artificial intelligence industry and providing new kinetic energy for development.

First of all, data came into the market when the industry was on the rise, and the cloud measurement data with the first-Mover advantage was not satisfied with the dividends at that time, but constantly increased the technical input and improved the production efficiency by improving the technical level. Give full play to the power of "underlying technology+service capability" and provide end-to-end training data service solutions in autonomous driving, smart home, smart city and smart finance and other industries.

At the same time, cloud measurement data keeps forward-looking forecast on the development trends of hot industries and technologies, and prepares relevant tool chains and data service capabilities in advance to ensure adequate preparation to meet new AI data requirements. In the current AI data industry chain, there is a keen discovery of cloud measurement data, and there is still a lack of a systematic data solution for AI engineering. However, this systematic data solution for AI engineering is needed by many industries. In this context, the cloud measurement data industry launched a new generation of data solutions for AI engineering, which was undoubtedly a timely rain for many industry customers and solved their actual needs.

For this reason, cloud measurement data has launched a new generation of data solution for AI engineering. Through the mature data management and labeling platform, this solution can complete system integration with enterprises, support enterprise-defined pre-labeling, algorithm interface, personnel management, project management system and secure delivery of software and hardware support. Under the labeling environment that ensures data privacy and security, it highly supports the efficient circulation of data required by enterprises, continuously performs data processing tasks, and improves the large-scale production efficiency.

For example, in the field of automatic driving, it can realize Data cleaning and labeling in the data closed loop of DataOps (that is, the combination of data and Operations) of automobile enterprises, and improve the circulation efficiency by 2 times compared with the original process; In the aspect of retail goods inspection, through the cloud measurement data labeling platform, the container inspection data continues to flow back, and visual review and modification are carried out based on the pre-labeling results of the algorithm, which improves the efficiency by 3 times compared with manual labeling.

"Walk alone fast, go far". In the era of industrial intelligence, we can’t just rely on one enterprise to fight alone. The double value of industry and society will produce compound interest effect. Cloud measurement data also knows this well. It is also actively promoting the standardization of artificial intelligence data industry, and has participated in the compilation and release of "Requirements and Methods for Marking Point Cloud Data of Intelligent Networked Car Lidar" and "Requirements and Methods for Marking Image of Intelligent Networked Car Scene Data", contributing experience and wisdom to industrial intelligence, and promoting the construction of standardization system in the vertical field of AI data service. In addition, it also participated in the first series of standards of "Model/MLOps Capability Maturity Model", which filled the gap of the development and management standards of machine learning projects at home and abroad.

Summary:

As the vanguard of artificial intelligence data services, cloud data is actively promoting the accelerated development of AI training data services, contributing experience and wisdom to industrial intelligence, thus becoming a new paradigm of industry development. I believe that next, cloud measurement data will continue to improve. While continuously enriching its own service capacity building and deep cultivation technology, it will maximize the value of training data and deliver more excellent data support for artificial intelligence scenes.

2023 Shanghai Civil Service -Summer Class Course Shiner

2023 Shanghai Civil Service Summer Class

01

Summer series

Suitable object

(1) Zero foundation, candidates who are relatively weak in Shanghai civil servants’ examinations

(2) In the preliminary examination, I hope to focus on training during the summer vacation to quickly improve the ability to take the test

(3) Xiaobai, candidates who are committed to the post of civil servants for freshmen

(4) Candidates who need to follow, guide, and urge the test ability to improve the ability to improve the ability to improve

Form of class

Famous teachers of Huazhi, concentrated training, face -to -face teaching, classroom interaction, and on -site questioning and services to make students experience better.

Series features/highlights

· Scientific planning

Make full use of the summer time to reasonably plan courses, and choose courses scientifically to maximize the effect of learning in a limited time.

Construction framework

Understand the essence and answer methods of each type of question, establish a complete knowledge system, and avoid moving hard.

· Comb

Reading, careful investigation, and comparison of outlines, carry out key knowledge, conduct carpet -style review, and fully familiarize with the test content.

·Filling in the gaps

Help students find vulnerabilities or symptoms, provide targeted suggestions, and timely check the leakage.

· Focus on refining

Grasp the "key points", break each, make full use of the summer follow -up learning, and establish a diversified knowledge system.

· Consolidate review

Strengthen the exercise simulation questions, real questions, and prediction questions, and consolidate the content of what they have learned.

02

Weekend series

Suitable object

(1) Candidates who are weaker in Shanghai Civil Service Examination

(2) In the preliminary examination, candidates who have not learned much about the Shanghai civil servant exam

(3) Candidates who want the system to review and improve a comprehensive improvement

(4) Candidates who need to write a full -process system for writing or interviews, and hope that candidates who have bonuses and protocol guarantees

(5) Students who need to follow, guide, and urge the test ability to improve the ability to improve the test.

Form of class

Opposite the offline: Facing teaching, classroom interaction, questioning and services on the spot, making students experience better.

Series features/highlights

Learn through

Offline Huazhi senior teachers have taught the skills and strategies of admitting the skills and strategies to learn the theoretical skills and lay a solid foundation.

· Practice

Provide a sufficient quantity to preserve questions, consolidate high after class, and practice the questions.

Test

Simulation simulation exams, you can practice, calm, and stable test room mentality.

· Separate teaching

Basic-Title Sea-Sprint-Interview, Stage Learning, layer up, strength prediction.

· Science learning

Consolidate the basic mastery method+sprint knowledge large combing+pre -test training.

· Answer

Follow -up questions, questions and answers, questioning questions, questioning of classrooms, questioning after class, assignment questions, all efficiency guarantee within 24 hours;

Chief

Huazhi senior teachers have been taught in person to help learn more.

Those who have a positive infection in Shanghai today have three emergency measures to implement three aspects

At 5:00 pm on June 26, the Shanghai Municipal Government News Office organized a press conference of the 218th press conference of Shanghai New Crown Pneumonia’s epidemic prevention and control work. Zhao Dandan, deputy director of the Municipal Health and Health Commission, Lai Xiaoyi, a second -level inspector of the Municipal Commerce Commission, Long Wanli, deputy head of Jing’an District, Zhang Yefang, deputy head of Fengxian District, and Sun Xiaodong, deputy director of the Municipal Centers for Disease Control and Prevention, attended the relevant situation and answered questions from reporters. Essence Municipal Government spokesman Yin Xin presided over a press conference.

Some reporters asked, how many medium -risk areas are there at present in Shanghai? After a lapse of a few days, there is a sporadic infection in Shanghai. Can you do some analysis for the current epidemic situation?

Zhao Dandan said that as of now, there are 13 areas of risks in the city in the city, involving Xuhui, Baoshan, Songjiang, Yangpu, Hongkou, Putuo, Jing’an, Minhang, Fengxian, etc. Risk -regional. In this way, since 0:00 on June 27, there are 12 central risk areas left in Shanghai.

After 5 consecutive days in Shanghai, there were no social positive infections, and there was a sporadic positive infection today. It should be soberly realized that the transmission of Omikon’s mutation is fast and hidden. As the current flow of personnel gradually increases, the risk of rebound in the Shanghai epidemic still exists. Therefore, we must adhere to the total policy of "dynamic clearing zero", strictly implement the "four -party responsibility", and focus on implementing three aspects of emergency response measures:

First, in terms of command systems, the city and district -level command systems have always maintained a stress state. After discovering positive infections, they must respond as soon as possible, and respond to emergency response in a timely manner to block the spread of epidemic as soon as possible.

Second, in terms of discovery mechanisms, constantly improved the convenient and sensitive discovery mechanism, established and improved the comprehensive monitoring system of "nucleic acid+antigen", "place code+digital sentry", "hot kidnapper+pharmacy" Early discovery, early report, early disposal.

Third, in terms of the synergy mechanism, maintaining the collaboration between the public security, public health, industrial information, and big data centers and districts. Once those who are positive are found, they will immediately implement the "2+4+24" requirements, that is, the flow team is 2 hours. Arrive at the scene, complete the core information of the flow tone within 4 hours, and initially check the basic situation and complete the flow report within 24 hours.

Here, the friends of the general public are invited to continue to adhere to the "three -piece set" and "five more", and to do the following:

The first is to keep in mind the "two musts", that is, the code must be scanned, and nucleic acid detection must be performed as required.

The second is that in the face of the influence of the epidemic prevention personnel, we should fulfill the responsibility of epidemic prevention and truthfully inform the event trajectory and other information. We will protect your privacy.

Third, once suspicious symptoms such as fever occur, be sure to do personal protection and go to the nearest clinics in time.

Archsummit direct hit | Build a smooth natural flutter page

Instructors

Amoy Technology Department | Leisure Fish Technology | Cloud

"Fully strengthening the flutter fluidity, sharing challenges, online monitoring tool construction, optimization means to precipitate in component containers, and finally optimized advice."

Zhang Yunlong (cloud from), idle fish client experts.Since Netease, byte, Ali is running. At the current Department of Alibaba, there are currently responsible for idle fish APP packages, fluidity, start-up equation experience.

Outline

This sharing revolves around FLUTTER fluidity, respectively: 1.Flutter fluidity optimization challenge; 2. List container and flutterdx component optimization; 3. Performance measurement and devTool extension; 4.Fltter sliding curve optimization; 5. Performance optimization suggestions.

FLUTTER fluency optimization challenge

Business complexity challenge

FLUTTER has always been known by everyone, and the list controls displayed by Flutter Gallery (shown in the left) is indeed very smooth. But the actual business scene (shown on the right) is more complex than the Gallery list demo:

  1. Same card, more and complex (such as rounded) view control;

  2. When the list scroll, there are more view logic, such as scrolling control of other controls and disappearing;

  3. Card controls, there are more business logic, such as a different label, activity price, etc. based on background data, and there is also common business logic, etc.

  4. Because idle fish is an e-commerce app, we need to have certain dynamic capabilities to deal with frequently changed activities. Here we use the Flutter Dynamicx components of Ali to implement our dynamic capabilities.

Framework challenge

Let’s look at the overall flow of the list, here only pay attention to the free scroll phase after the finger is released.

  1. When the finger is released, the initial speed is calculated based on ScrollDragController.end;

  2. UI Thread requests RequestFrame to Platform Thread, and calls BegInframe to UI Thread at Platform Thread.

  3. The UI Thread Animate phase trigger list slides a little distance while registering the next frame callback to Platform Thread;

  4. Ui Thread Build Widget, generate / update the renderObject tree through the three tree DIFF algorithm of Flutter;

  5. UI Thread RenderObject Tree Layout, Paint Generates an Scene object, and finally passed to Raster Thread to draw on-screen;

The above flow must be completed in 16.6 ms to ensure that the frame cannot be guaranteed. Most of the cases, there is no need to build a new card, but when the new card enters the list area, the entire calculation amount will become huge, especially in complex business scenes, how to ensure all calculations within one frame of 16.6ms, Is a small challenge.

The figure above is a sliding devTool sample, and the Carton stage occurs when the new card is on the screen, and the other phases are very smooth, because the scrolling speed is attenuated, so the carton interval is also getting bigger. Because most of the time is very smooth, the average FPS is not low. However, the new card is built at the time of production, which gives us a stylish body feeling.

Challenge of dynamic capabilities – Flutter Dynamicx

The free fish APP card uses the self-developed Flutter Dynamicx to support our dynamic capabilities. Basic Principle: Online Edit Layout DSL, generate DX files and send it. The end side generates the DXComponentWidget by parsing the DX file and combines the back card data, and finally generates Widget Tree. FLUTTER DYNAMICX technology brings dynamic update capabilities, unified monitoring capabilities (such as dxcomponentwidget monitoring cards), good research and development insecurity (online DSL and Android Layout, and optimize Android), online editing capabilities;

But in performance, we also pay a certain price: DX cards add time to the template loading and data binding overhead, Widget wants to recursively create through WidgetNode traverses dynamically, and the view nesting layer will be deeper (followed by later).

Description: Flutter Dynamicx Reference Ali Group DSL Rules Realization

User’s sense of physical challenge

I have already described above, and the card in the FLUTTER list is more obvious.

When Android RecycleView occurs, the physical feel is not obvious, and the FLUTTER list has occurred when the card occurs, not only the time pause, but also a hopping on the OFFSET, and the physical feeling of small card is also changed. It is obvious;

Suppose the list content is simple enough, scrolling does not happen, we also found that the Flutter list and Android RecycleView are not the same:

? Use ClampingscrollPhysics to feel the feeling of similar magnets when the list is stopped.

? Use BOUNCINGSCROLLLPHYSICS, the list is started, and the speed attenuation is faster;

On the 90Hz machine, the early flutter list is not smooth, the reason is that the touch sampling rate is 120 Hz, and the screen refresh rate is 90Hz, causing partial screens to be 2 touch events, part is a 1 touch event, last Resulting in rolling OFFSET effects. When the Flutter 1.22 version, RESAMPLINGENABLED can be used to re-sample the touch event.

List container and flutterdx component optimization

Telling the challenge of Flutter fluidity optimization, now share how you optimize the smoothness and precipitate into PowerScrollView and Flutter Dynamic components.

PowerScrollView design and performance optimization

PowerscrollView is a snarefish team’s self-developing Flutter list assembly, with better packages and supplements on the Sliver Agreement: Data increased deletion, complement local refresh; layout, supplemented the waterfall flow; incident, supplement the card on the screen , Away, scrolling events; control, support for scrolling to Index.

In terms of performance, the waterfall flow layout optimization, local refresh optimization, card division optimization, and sliding curve optimization.

PowerScrollView Waterfall Flow Layout

PowerScrollView Waterfall Flow Layout provides longitudinal layout, lateral layout, mixed arrangement (transverse card and ordinary card mix). Nowadays, most of the listings of the hiped fish are available in PowerScrollView’s waterfall flow layout, such as the home page, search results page, etc.

PowerScrollView Waterfall Flow Layout Optimization

First, through conventional cache optimization, cache each card upper corner X value and which column belonging.

Compared to the Slivergrid card into the list area, the waterfall flow layout, we need to define Page, card admission to create and leave the field destruction need to be units. Before optimization, Page calculates cards in a screen visual area, and in order to determine the starting point Y value of Page, the primary layout needs to calculate the Page N and N + 1 two pages, so the amount of cards involved in the layout calculation is much lower, and the performance is low. After optimization, the approximation of all card height averages calculates Page, which greatly reduces the number of participating in the layout card, and the number of cards destroyed by Page also becomes less.

After the column cache and paging optimization, use the idle fish Self-developing Benchmark tool (follow-up) to compare the waterfall flow and GridView, view the number of frames and the worst frame consumption, can find that performance performance is basically consistent.

PowerScrollView local refresh optimization

Leisure fish products expect users to browse products more smooth, will not be loaded by loadmore, so the list is required to trigger LoadMore during scrolling. FLUTTER SLIVERLIST When the LOADMORE supplement card data, the List control is tender, and the slterlist building will destroy all cards and recreate it, and the performance data can be imagined very bad. PowerScrollView provides a layout refresh optimization: all cards on the cache screen, no longer recreate, ui thread Optimize from the original 34MS to 6MS (see the lower left picture), the right image is viewed by Timeline, the depth and complexity of the view built Optimize.

PowerScrollView card fragmentation optimization

The second figure 2 card is the early search results page of the idle fish, and it is not a waterfall flow. To view the Timeline chart when the card is created (adding DX Widget creation and PerformLayout overhead), you can find that the complexity of the card creation is extremely large. On the normal mid-range machine, the UI Thread consumes more than 30ms, to be optimized to 16.6ms It is very difficult to use routine optimization. For this purpose, two cards can be disassembled, and each frame is used to render.

Directly see the source code, the basic idea is to mark the card widget, when the card is true, the right card first _BuildPlaceHoldercell builds the Widget (empty Container), and register the next frame. In the next frame, the right card is modified with NeedShowRealcell for True, and self-laminate, and then build real content.

Is it delayed to build a true content of the card, will it affect the display content? Because the FLUTTER list has a cacheextends area on the visual area, this part of the area is not visible. In most scenarios, users don’t see the scene of the blank card.

Also using the FLUTTER BENCHMARK tool to perform performance test, you can see 90 points before and after the card division, 99 packet consumption has a significant downgrade, and the number of lost frames is also reduced from 39 to 27.

Note Here, when listening to the next frame, you need widgetsbinding.instance.scheduleframe to trigger the RequestFrame. Because when the list is displayed, it is possible because there is no callback from the next frame, resulting in the task of the delay display queue, eventually makes the first screen content display is incorrect.

Delayed framing optimization ideas and suggestions

Comparison of Flutter and H5 design:

  1. DART and JS are single-threaded models that need to be sequenced and deserialized across threads;

  2. Flutter Widget is similar to H5 VDOM, there is a DIFF process.

Early Facebook In React Optimization, the Fiber Architecture is proposed: Based on the VDOM Tree’s Parent Node → Sub-node → Brothers Node → Sub-node, the VDOM Tree is converted to the Fiber data structure (chain structure), and the reconcile phase is implemented. Interrupt recovery; based on the Fiber data structure, the control section continues in the next frame.

Based on React Fiber thinking, we propose its own delayed framing optimization, not just left and right card size, further, render content disassembled as the current frame task, high-excellent delay task and low delay tasks, the upper screen priority is sequentially changed Low. Where the current frame task is the left and right white Container; the high-optovel delay task is exclusively frame, where the picture portion also uses Container placeholders; in the idle fish scene, we dismantled all DX image widget from the card, as low as low Excellent delay tasks and is set to no more than 10 in one frame consumption.

By disassembling the 1 frame display task to 4 frames, the highest UI on the high-end machine will be optimized from 18 ms to 8 ms.

Description 1: Different business scenes, high-yogle and low-probing task settings have different description 2: Slide on the low-end machine (such as Vivo Y67), the sub-frame scheme will let the user see the list whitening and content Upable process

FLUTTER-DYNAMICX Component Optimization – Principle Explanation

Edit the "Class Android Layout DSL", compile the binary DX file. The end side is downloaded, loaded, and resolved, and the WidgetNode Tree is generated. See the right figure.

After the business data issued in the background, the Widget Tree is generated by recursively traversing WidgetNode Tree, and finally appears.

Description: Flutter Dynamicx Reference Ali Group DSL Rules Realization

FLUTTER-DYNAMICX Component Optimization – Cache Optimization

I know the principle, it is easy to discover the flow in the red box in the picture: binary (template) file parsing load, data binding, Widget dynamic creation has certain overhead. To avoid repeated overhead, we have cached DXWIDGETNODE and DXWIDGET, and the blue selection code shows the Widget cache.

FLUTTER-DYNAMICX Component Optimization – Independence ISOLATE Optimization

In addition, the above logic is placed in a stand-alone ISOLATE, and the maximum amount is lowered to the lowest. After the line technology grayscale AB experiment, the average carton bad frame ratio is reduced from 2.21% to 1.79%.

FLUTTER-DYNAMICX Component Optimization – Hierarchical Optimization

FLUTTER DYNAMICX provides class Android Layout DSL, adds Decoration layers to implement each control Padding, Margin, Corner, adds the Decoration layer; to implement the DXContainerRender layer. Every layer has its own clear duty, the code level is clear. However, since the increase in 2 layers caused the Widget Tree hierarchy, the DIFF logic of 3 trees became complicated and the performance becomes low. To do this, we merge the Decoration layer and the DXContainerRender layer, see the middle Timeline diagram, which can be found that the optimized flame grading and complexity becomes low. After the line technology grayscale AB experiment, the average carton bad frame ratio is reduced from 2.11% to 1.93%.

Performance measurement and devtool extension

Tell the optimization tool, which is described here to make a measure of how to measure, and the build / extension of the tool.

Offline scene – Flutter BenchmarkWhen the FLUTTER is detected, the calculation consumption on the UI Thread and Raster Thread is required. So the Flutter optimizes before and after comparison, using the time consuming data of the UI Thread and Raster Thread of each frame.

In addition, the fluency performance value is affected by the operating gesture, the scrolling speed, so the error based on the measurement results of manual operations will have errors. Here, use the WidgetController control list control FLING.

The tool provides the interval between the scrolling speed, the number of scrolls, the scroll, and the like. After the scrolling test is completed, the data is displayed by the UI and Raster Thread frame, 50 points, 90 points, and 99-positioned frame consumption, and give performance data from a variety of dimensions.

Offline scenario – Based on the recording screen

Flutter Benchmark gives multi-dimensional measurement data at the Flutter page, but sometimes we need a horizontal comparison competition app, so we need to have a tool transverse to more different technologies. The idle fish is self-developed in the Android side to self-developed the recording screen data. Imagine the mobile phone interface into multiple screens, get the screen data (byte arrays) (byte arrays) by sending VirtualDisplay, interval 16.6 ms, using the Hash value of the byte array represents the current picture, the current 2 The Hash-read hash value is unchanged, and the Carton is considered.

In order to ensure that the fluency detecting tool app itself does not have a carton, it is read, which is compressed, and the compression ratio on the low-end machine is higher.

Through the detection of the tool without invading, a rolling test can be detected, the average FPS value (57), the frame distribution is variance (7.28), 1S time, the large number of large cards (0.306), large card cumulative time (27.919). Intermediate array display frame distribution: 371 represents the number of normal frames, 6 generations 16.62ms of small cardon quantity, 1 generation 16.63MS quantity.

Here is the definition of the big Carton: Carton, greater than 16.6 * 2 ms.

Offline Scene – Performance Detection Based on DEVTOOL

In addition, the scenes of the idle fish are also extended DevTool. In a Timeline map extended time-consuming, greater than 16.6ms red highlight, convenient development.

Online scene-Flutter high available detection FPS implementation principle

Online scene, idle fish self-developed Flutter high available. The basic principle is based on 2 events:

  • Ui.window.onbeginframe event

    • Engine notifies the VYSNC signal arrival, notify UI Thread to start preparing the next frame building

    • Trigger schedulerbinding.handlebeginframe callback

  • Ui.window.ondrawframe event

    • Engine Notification UI Thread Start Draw Next Frame

    • Trigger schedulerbinding.handledrawframe callback

Here we have recorded a frame start event before the Handlebeginframe processing, and the end of the frame is recorded after HandledrawFrame. Each frame here needs to calculate the list control offset value, and the specific code implementation is implemented. When the entire accumulated exceeds 1, executes a calculation, filtering out the scene without scrolling, calculates the FPS value using each frame.

Online Scene – FlutterBlockcanary Line Stack Stack Detection

After using Flutter high available to get the online FPS value, how to locate the stack information, you need to collect stack information. Free fish collects carton stacks using the self-developed Flutterblockcanary. The basic principle is that the signal is transmitted in the C layer, such as 5ms once, each signal receives the Dart Ui Thread stack collection, the resulting series of stacks are aggregated, and the same stacks in a row are considered to have occurred in Carton, this This stack is the stack of Carton we want.

The following figure is the stack information collected by Flutterblockcanary, and the middle framefpsRecorder.getscrolloffset is a Carton call.

Online scene – FlutterBlockcanary Detects overreservation

In addition, FlutterBlockcanary also integrates over-rendering detection capabilities. Replace the Buildowner object by replying widgetsflutterbinding, replacing the buildowner object, and rewrive the ScheduleBuildFor method to intercept Element. Based on the dirty ELEMENT node, extract the depth of the dirty node, the number of direct child nodes, the number of all child nodes.

Based on the number of all child nodes, in the idle fish details page, we are positioned to the "Quick Question View" during scrolling, and the number of transes and all child nodes are too large. View the code, positioning the view hierarchical level, by sinking the view to the leaves node, the number of stasible Build nodes is optimized from 255 to 43.

FLUTTER sliding curve optimization

The front told Tarton optimization means and measures and standards are mainly surrounded by FPS. But from the user’s physical feel, we found that Flutter also has many optimal points.

FLUTTER list slide curve and native curve

Compare the scroll curve of OFFSET / TIME, you can find that the Flutter BouncingScrollsimulation and iOS scroll curve are close, Clampingscrollsimulation and RecyClerView are close. Check the Flutter source code, it is true.

Because BouncingScrollsimulation has rebound, many pull-down refreshes and load more features are based on BOUNCINGSCROLLSIMULATION package, which causes the Flutter page sliding, physical and native Android pages inconsistent.

Flutter list performance and optimization under fast sliding

Although the Clampingscrollsimulation slides and Android RecyclerView is close, but in the quick sliding scenario, you can find that the flutter list scrolls quickly stops, and quickly slides. For the reason, you can see the moment that the sliding curve is stopped, and the speed is not a decline, and it will speed up, finally reach the end point, and stop. Based on the source code formula, the curve can be discovered that flutter clampingscrollsimulation is approximated by the Formula Fitting Method to approximate the Android RecyclerView Curve. In the case of rapid sliding, the focus of the formula curve is not 1 corresponding value, but the right image is broken, the speed will become fast.

It can be understood that the FLUTTER’s formula fit is not ideal. In the near future, there is also a PR proposed using DART to implement the RecyclerView curve.

Flutter list performance and optimization in the case of Carton

The first chapter is mentioned in the case of the same FPS, such as the FPS 55, the native list feels smooth, and the styles of the FLUTTER list are more obvious. One reason here is that the native list usually has multiple thread operations, and there is a lower probability of the big Carton; the other reason is that the same small carton’s body, FLUTTER has obvious statter, and the native list can’t feel. So why?

When we build cards, we deliberately create small Carton, compare the flutter list and RecyclerView before and after, and you can find that RecyclerView Offset does not hop, and the Flutter curve has a lot of burrs, because Flutter scrolling is based on D / T curve calculation, When a carton occurs, △ t doubles, and OFFSET also trips. It is also because of time pause and offset jump, let users know that the Flutter list is not unstoppable in small Carton.

By modifying the Y=D (T) formula, in the case of Carton, ΔT-16.6ms will ensure that the small Carton case is not hopped. In the case of Great Carton, it is not necessary to reset the ΔT to 16.6ms, because in the parking time, it has been clearly allowed to give the user to feel the carton, OFFSET does not have a trip only to make the list rolling distance short.

Performance optimization

Finally share some suggestions for performance optimization.

  1. In optimization, we should pay more attention to the user’s body, not only the performance value. The upper right map is visible, even if the FPS value is the same, but the taste occurs, the body feels clearly; the bottom of 2 game recording screens, the left side average 40 fps, the average of 30 fps, but the body feels is more smooth .

  2. Not only should I pay attention to the performance of UI Thread, but also pay attention to the overhead of Raster Thread, such as the characteristics / operation of Save Layer, but also causing Carton.

  3. In terms of tool, it is recommended to use different tools in different scenarios. It should be noted that the problem of tool detection is a stable reproduction problem or the occasion of data jitter. In addition, it is also necessary to consider the performance overhead of the tool itself, and the tool itself needs to be as low as possible.

  4. In terms of optimization ideas, we must broaden the direction. Most optimized ideas of Flutter are optimized computing tasks; and multithreading direction is not, refer to the independent ISOLATE Optimization of Flutter Dynamicx; in addition, it is difficult to digestive tasks for one frame Whether it is possible to disassemble multiple frame time, try to make a card per frame, priority to the user.

  5. Finally, I recommend paying attention to the Flutter community. The Flutter community continues to have a variety of optimization, regularly upgraded Flutter or dimensions, CHERRY-PICK optimization submission, is a good choice.

Performance analysis tool usage suggestions

Flutter tool, the first push is the official devtools tool, the Timeline and CPU Flammatic maps can help us discover problems well; in addition, Flutter also provides a wealth of Debug Flags to assist our positioning problems, familiar with each Debug switch Role, I believe that there will be no homage to our daily research and development; in addition to official tools, performance logs are also good auxiliary information, as shown in the lower right corner, the idle fish Fish-Redux component outputs the task overhead in the scroll, can It is convenient to see that at that moment.

Performance analysis tools themselves

Performance testing tools inevitably have certain overhead, but must be controlled within an acceptable range, especially on the line. A case in front sharing the FLUTTERBLOCKCANARY detection tool, discovers the framefpsRecorder.getscrolloffset time consumption, and the logic is just that Flutter is highly available to scroll offset. See the right front source code of the right picture, each frame needs to be recursively traversed to collect RenderViewPortBase, which is a small overhead. Finally, we avoid the repetition calculations during the scroll through the cache optimization.

Carton optimization suggestions

Reference official documents and excellent performance articles, precipitated a lot of routine optimization methods in the UI and GPU side, such as refreshing the minimum widget, using itemextent, recommended using Selector and Consumer, etc., avoid unnecessary DIFF computing, layout calculation, etc. Reduce SAVELAYER, replace half-transparent effects using images, alleviate the overhead of the Raster thread.

Because of the reasons, only part of the sequence, more common optimization suggestions see the official documentation.

Use the latest Flutter Engine

As mentioned earlier, the Flutter community is also active, Framework and Engine layers have an optimized PR income, which mostly can make the business layer without perception, and better optimize performance from the bottom viewing angle.

Here, there is a typical optimization scheme: existing flutter solution: When each VSYNC signal arrives, it triggers the build operation. At the end of Build, start register the next vsync callback. In the case where a carton does not occur, see Figure Normal. However, in the case of carton, see Figure Actual Results, just over 16.6ms here, because it is a registration listening to the next vsync callback, triggered the next build, for this, a large amount of time in the middle. Obviously, what we expect is, at the end, immediately execute, assuming enough to execute enough, this time the screen is still smooth.

If the team allows, it is recommended to upgrade the flutter version regularly; or maintain your own Flutter independent branch is also a good choice. From the community Cherry-Pick optimization, you can guarantee that business stability can also enjoy the community contribution. In short, I recommend you to pay attention to the community.

Summarize

In summary, the challenges, monitoring tools, optimization methods, and recommendations are shared by Flutter fluidity optimization. Performance optimization should be people-centered, develop monitoring indicators and optimization points from actual physical fitness; fluency optimization is not one, the above share is not all, there are many optimized means to pay attention: How to better multiplex Element, how to avoid Platform Thread busy leading to vsync signal lacking, etc., is a point that can be concerned. Only the continuous technical enthusiasm and conscious spirit can optimize the APP performance to the ultimate; technical teams also have access to open source communities, other teams / companies to connect, That stone stone, Can be attacked.

What are the use of face recognition technology?

In recent years, artificial intelligence has developed rapidly, especially human face recognition technology, is increasingly widely used in daily life. After entering the 21st century, China Electronic Technology has developed rapidly in just decades, and it is inseparable from the promotion of scientific and technological talents. From human beings enter the steam era, then go to the electrical age, human beings have begun to develop rapidly, and science and technology enters the era of large bombings. Technical application makes us live more fast, efficient, intelligent.

Today mainly introduces people’s face recognition technology, face recognition system has a wide range of applications: face recognition, face recognition, banned tarthen system, face recognition monitoring management, face recognition computer security, face recognition photo search , Face recognition, registration, face recognition ATM wit, video alarm system, face recognition prison intelligent alarm system, face recognition RFID intelligent customs clearance system, face recognition public security criminal pursuit of intelligent alarm system and so on. If the Alipay brush is paid, the "safe city" built by the public security is arrested in the escape criminals, brushing the face into the community, etc. is the application of face recognition technology.

Scope of application: park, factory, supermarket, community square, conference center, sports venue, school, hospital, residential area, commercial street, large-scale farm market, etc. Important parts, hotels, restaurants, catering, entertainment venues Monitoring recording purposes for indoor and outdoor surveillance of the lobby entrance, elevator and other major channels.

Face capture and tracking

Face capture refers to a frame in a frame of an image or video stream and separating portraits from the background and saves it automatically. Portrait tracking refers to the use of portrait capture techniques that automatically tracks it when the specified portrait is moving within the range of the camera.

Face recognition alignment

Face recognition is divided into two comparisons and search formulas. The verification is that the portraits of the captured or the specified portrait have been logged in the database. Remember that a certain object is determined to be the same person. Searching comparison means searching for searching for a specified portrait from all portions registered in the database.

Face modeling and search

The system can model the portable data of the library to extract the characteristics of the face and save it into the database (face feature file) to the database. When performing a face search (search formula), the specified portrait is modeled, and it will be identified compared to the templates of all people in the database, and ultimately list the most similar person according to the compared similar value. List.

The Newjin District as a pilot city representative in the "Kechuang China" artificial intelligence governance closed door experience sharing

On November 29th, hosted by the "Kechuang China" advisory committee"Kechuang China" artificial intelligence governance closed meetingHeld in the form of an online Tencent meeting. Chengdu Xinjin District is an invited meeting as a pilot city, and has experienced experience in "digital communication new cities, new industries, the practice of new life". It is also the only pilot city representative of the conference. .

This meetingArtificial intelligence governance under the new situation"" For the theme, focus on the intelligent management of the new development philosophy, the privacy protection of the sharing of major data in the artificial intelligence industry, construct the standard and norm of the government governance intelligence, invited the "Komantui China" Advisory Committee Members, artificial intelligence field experts, "Kechuang China" pilot city representative, to carry out forward-looking trend analysis, academic research discussion and practice sharing.

As the only pilot city representative of the only experience in sharing practices,Digital communication new city, new industry, new life practice exploration"As the subject, I introduced Xinjin to the key starting of the digital empowerment entity as a cross-economic transformation, driving high-quality development, with digital economy, cultivating the city innovation industry, relying on industrial function area spatial field promotion digital communication The physical industry, building a new city, developing new manufacturing, reshaping new rural villages, and accelerating the practice of promoting the economy to enter the high-quality development of fast lanes, and the experts of the participating meeting will "double development + double drive" intelligent manufacturing of Xinjin Industrial Internet "Digital Agricultural Expo + Link Urban and Rural" link Xinjin new city, new manufacturing, new villages, and innovative paths that integrate development, and discuss it.