Visual vehicle control method and device based on vehicle model and storage medium

Through the visual vehicle control method based on the vehicle model, the vehicle model image is generated and the user interaction is responded to user interaction, and the problem of intuition in the prior art is solved, and a more efficient and intuitive vehicle control experience is achieved.

CN119396503AInactive Publication Date: 2025-02-07CHENGDU CELIS TECH CO LTD

Patent Information

Application Number
CN202411314272.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-09-20
Publication Date
2025-02-07
Estimated Expiration
Not applicable · inactive patent

AI Technical Summary

Technical Problem

The operating interface of the existing vehicle control app is not intuitive enough, and the status of each part of the vehicle cannot be finely controlled, and the function display is incomplete, resulting in a decrease in user experience and operation efficiency.

Method used

Using a visual vehicle control method based on the vehicle model, a vehicle model image corresponding to the vehicle model is generated by obtaining the vehicle controllable function list, including multiple controllable components. According to user interaction, the acquisition parameters are converted into vehicle control instructions to update the display status of the controllable components in the vehicle model image.

Benefits of technology

It realizes the intuitiveness, comprehensiveness and ease of use of vehicle control operations, and improves user experience and operation efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119396503A_ABST
    Figure CN119396503A_ABST
Patent Text Reader

Abstract

The invention provides a visual vehicle control method and device based on a vehicle model and a storage medium. The method comprises the following steps: generating a vehicle model image of a vehicle model according to a controllable function list; cutting a controllable component in the car model image, and determining coordinate information of the controllable component; drawing the car model image and the controllable component on the interface of the client according to the interface size of the client and the coordinate information of the controllable component; binding the vehicle control state of the controllable component with the picture processing logic; in response to an interactive operation of a user on the vehicle model image, converting parameters collected by the interactive operation into a vehicle control instruction; and a vehicle control instruction is sent to the vehicle, the loading dynamic effect is displayed in the controllable component area in the vehicle model image interacted by the user, a control result returned by the vehicle is received, and the display state of the controllable component in the vehicle model image is updated according to the control result. The vehicle control operation is more visual and comprehensive, the operation is easy, and the user experience and the operation efficiency are improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of new energy vehicle technology, and in particular to a vehicle model-based visualized vehicle control method, device and storage medium. Background Art

[0002] With the development of intelligent vehicles, more and more vehicles are equipped with on-board control systems, and users can remotely control various functions of the vehicle through the vehicle control app. These functions usually include door opening and closing, window control, light adjustment, air conditioning settings, etc. Existing vehicle control apps generally adopt a button-based user interface design, which controls vehicle functions by clicking buttons. However, this traditional button-based interaction method has many shortcomings in practical applications, limiting the user experience and the sophistication of operation.

[0003] First, the button UI design in the prior art is not intuitive enough. Although buttons are usually equipped with icons and text, it is difficult for users to intuitively understand the specific functions of buttons based on icons alone. Even if there are text descriptions, this design can usually only express the four basic states of open, closed, unavailable, and in progress, and cannot accurately convey more detailed information such as the door opening angle and window ventilation level.

[0004] Secondly, the existing button design cannot support the full range of vehicle functions. Due to the diversity of vehicle functions, such as the lights and rearview mirrors are divided into left and right, front and back, and the wipers and windshield are also divided into front and back, the existing buttons cannot distinguish these subtle differences. If a separate button is designed for each function, the interface will become too complicated and cumbersome, resulting in inconvenient operation. Therefore, users cannot perform fine control, such as controlling only the front lights or adjusting the position of the rearview mirrors individually.

[0005] Finally, the existing technology is not complete in function display. Vehicles have many functions, and the existing button list design method is difficult to display all functions on one page. When users need to make adjustments, they must turn pages or enter other pages to find relevant functions, which increases the operation steps and complexity and reduces the convenience of use. Summary of the invention

[0006] In view of this, the embodiments of the present application provide a visual vehicle control method, device and storage medium based on a vehicle model to solve the problems existing in the prior art that the operating interface is not intuitive enough, the status of various parts of the vehicle cannot be precisely controlled, the function display is incomplete, and the user experience and operating efficiency are reduced.

[0007] In a first aspect of an embodiment of the present application, a visual vehicle control method based on a vehicle model is provided, comprising: obtaining a list of controllable functions of the vehicle, and generating a vehicle model image corresponding to the vehicle model according to the list of controllable functions, wherein the vehicle model image includes multiple controllable components of the vehicle; cutting the controllable components in the vehicle model image, and determining the coordinate information corresponding to the controllable components; drawing the vehicle model image and the controllable components on the client interface according to the interface size of the client and the coordinate information of the controllable components; binding the vehicle control state of the controllable components with the corresponding image processing logic, so that the controllable components perform image updates according to changes in the vehicle control state; in response to user interaction operations on the vehicle model image, collecting corresponding parameters according to the interaction operations, and converting the parameters into vehicle control instructions; sending vehicle control instructions to the vehicle, displaying a loading animation in the controllable component area in the vehicle model image where the user interacts, receiving the control results returned by the vehicle, and updating the display state of the controllable components in the vehicle model image according to the control results.

[0008] In a second aspect of an embodiment of the present application, a visual vehicle control device based on a vehicle model is provided, comprising: a generation module, configured to obtain a list of controllable functions of a vehicle, and generate a vehicle model image corresponding to the vehicle model according to the list of controllable functions, wherein the vehicle model image includes a plurality of controllable components of the vehicle; a cutting module, configured to cut the controllable components in the vehicle model image, and determine the coordinate information corresponding to the controllable components; a drawing module, configured to draw the vehicle model image and the controllable components on the interface of the client according to the interface size of the client and the coordinate information of the controllable components; a binding module, configured to bind the vehicle control state of the controllable components with the corresponding image processing logic, so that the controllable components perform image updates according to changes in the vehicle control state; a conversion module, configured to respond to user interaction operations on the vehicle model image, collect corresponding parameters according to the interaction operations, and convert the parameters into vehicle control instructions; an update module, configured to send a vehicle control instruction to the vehicle, display a loading animation in the controllable component area in the vehicle model image interacted with by the user, receive the control results returned by the vehicle, and update the display state of the controllable components in the vehicle model image according to the control results.

[0009] According to a third aspect of an embodiment of the present application, an electronic device is provided, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the steps of the above method are implemented when the processor executes the computer program.

[0010] According to a fourth aspect of an embodiment of the present application, a computer-readable storage medium is provided, which stores a computer program, and when the computer program is executed by a processor, the steps of the above method are implemented.

[0011] At least one of the above technical solutions adopted in the embodiments of the present application can achieve the following beneficial effects:

[0012] By obtaining a list of controllable functions of the vehicle, and generating a car model image corresponding to the vehicle model according to the list of controllable functions, the car model image includes multiple controllable components of the vehicle; cutting the controllable components in the car model image, and determining the coordinate information corresponding to the controllable components; drawing the car model image and the controllable components on the client interface according to the interface size of the client and the coordinate information of the controllable components; binding the vehicle control state of the controllable components with the corresponding image processing logic, so that the controllable components can update the image according to the change of the vehicle control state; in response to the user's interactive operation on the car model image, collecting corresponding parameters according to the interactive operation, and converting the parameters into vehicle control instructions; sending vehicle control instructions to the vehicle, displaying loading dynamic effects in the controllable component area in the car model image of the user interaction, and receiving the control results returned by the vehicle, and updating the display state of the controllable components in the car model image according to the control results. The vehicle control operation of the present application is more intuitive, comprehensive, and easy to operate, which improves user experience and operating efficiency. BRIEF DESCRIPTION OF THE DRAWINGS

[0013] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.

[0014] Figure 1 It is a schematic diagram of the button UI design of a certain interface of a vehicle control app in the prior art;

[0015] Figure 2 It is a schematic diagram of the button UI design of a car control app in another interface in the prior art;

[0016] Figure 3 is a flow chart of a visual vehicle control method based on a vehicle model provided in an embodiment of the present application;

[0017] Figure 4 is a schematic diagram of an air conditioning control interface inside a vehicle provided in an embodiment of the present application;

[0018] Figure 5 is a schematic diagram of a control interface of a seat and a steering wheel provided in an embodiment of the present application;

[0019] Figure 6 This is a schematic diagram of a vehicle external control interface at an angle provided in an embodiment of the present application;

[0020] Figure 7 is a schematic diagram of a vehicle external control interface from another angle provided in an embodiment of the present application;

[0021] Figure 8 is a schematic diagram of a local image corresponding to a vehicle door and a vehicle window closed provided in an embodiment of the present application;

[0022] Fig. 9 is a schematic diagram of a local image corresponding to a vehicle door and window opened provided by an embodiment of the present application;

[0023] Fig.10 is a schematic diagram of a car model image in an actual scenario provided by an embodiment of the present application;

[0024] Fig.11 is a schematic diagram of a car model image in another actual scenario provided by an embodiment of the present application;

[0025] Fig.12 is a schematic diagram of a door area of ​​a car model image in an actual scenario provided by an embodiment of the present application;

[0026] Fig.13 is a schematic diagram of a door area of ​​a car model image in another actual scenario provided by an embodiment of the present application;

[0027] Fig.14 is a schematic diagram of an area corresponding to an actual door portion of a car model image in an actual scenario provided by an embodiment of the present application;

[0028] Fig.15 is a schematic diagram of an area corresponding to an actual door portion of a car model image in another actual scenario provided by an embodiment of the present application;

[0029] Fig.16 is a schematic diagram of a vehicle model provided by an embodiment of the present application when a door is in an open state;

[0030] Fig.17 is a structural schematic diagram of a visual vehicle control device based on a vehicle model provided in an embodiment of the present application;

[0031] Fig.18 It is a schematic diagram of the structure of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0032] In the following description, specific details such as specific system structures, technologies, etc. are provided for the purpose of illustration rather than limitation, so as to provide a thorough understanding of the embodiments of the present application. However, it should be clear to those skilled in the art that the present application may also be implemented in other embodiments without these specific details. In other cases, detailed descriptions of well-known systems, devices, circuits, and methods are omitted to prevent unnecessary details from obstructing the description of the present application.

[0033] In the current technical context, the commonly used vehicle control apps on the market mainly provide control over various vehicle functions through graphical buttons. The UI design of these buttons is roughly as follows: Figure 1 and Figure 2 shown. Figure 1 This is a schematic diagram of a button UI design of a car control app in a certain interface in the prior art. Figure 2 This is a schematic diagram of the button UI design of another interface of the existing car control app. By clicking these buttons, users can perform operations such as opening or closing car doors and windows, controlling charging ports, or adjusting air conditioning. However, the existing car control apps still have the following defects:

[0034] 1) Current car control app interfaces usually rely on icons and a small amount of text to indicate the function of each button. Figure 1 and Figure 2 In the icons, although there may be text labels next to the buttons, it is difficult for users to immediately understand the specific functions of each button if they look at the icons alone. This means that users may need to spend extra time to identify the function of each button during operation. In addition, the status information that these buttons can convey is very limited, usually only four types: open, closed, unavailable, and executing. For example, for the status of the car door, the user can only know whether the door is open or closed, but cannot know the specific angle to which the door is opened. Similarly, for the ventilation status of the car window, the user cannot know how much the window is lowered, and there is a lack of operational sophistication and intuitive feedback.

[0035] 2) Existing button designs cannot achieve detailed control of various parts of the vehicle. Different parts of the vehicle, such as rearview mirrors, lights, windshields, etc., are divided into front and back or left and right, but these buttons often cannot make such detailed distinctions. For example, Figure 1 and Figure 2 In the interface, users cannot control only the front lights or the rear lights independently, which means that users can only perform rough operations. In addition, if you want to cover all the detailed operations, you need to add a large number of buttons on the interface, which not only increases the complexity of the interface, but also makes the operation cumbersome and reduces the user experience.

[0036] 3) Due to the diverse functions of vehicles, the existing button list method often cannot display all functions on one page. Figure 1 and Figure 2 As shown in the figure, only some functions can be displayed on the interface, and users need to turn pages or enter additional pages to find and adjust other functions. This design increases the user's operating burden to a certain extent, resulting in inconvenience in use.

[0037] Therefore, to sum up, the main problems of existing vehicle control apps are: the operating interface is not intuitive enough, it is impossible to finely control the status of various parts of the vehicle, and the function display is incomplete, which brings many inconveniences to users.

[0038] In view of the problems existing in the prior art, this application provides a visual vehicle control method based on a vehicle model in order to solve the problems existing in the existing vehicle control App, such as "not intuitive enough", "inability to perform full operations", "incomplete display", etc. The visual vehicle control method of this application is more intuitive, comprehensive, and easy to operate. It should be noted that the vehicle models in the following embodiments of this application include but are not limited to 2D or 3D vehicle models, and the specific appearance design of the vehicle model does not constitute a limitation on the technical solution of this application.

[0039] The contents of the technical solution of the present application are described in detail below with reference to the accompanying drawings and specific embodiments.

[0040] Figure 3 It is a flow chart of a visual vehicle control method based on a vehicle model provided in an embodiment of the present application. Figure 3 The vehicle model-based visual vehicle control method can be executed by the vehicle control program. Figure 3 As shown, the visual vehicle control method based on the vehicle model may specifically include:

[0041] S301, obtaining a list of controllable functions of a vehicle, and generating a vehicle model image corresponding to a vehicle model according to the list of controllable functions, wherein the vehicle model image includes a plurality of controllable components of the vehicle;

[0042] S302, cutting the controllable components in the car model image and determining the coordinate information corresponding to the controllable components;

[0043] S303, drawing the car model image and the controllable components on the interface of the client according to the interface size of the client and the coordinate information of the controllable components;

[0044] S304, binding the vehicle control state of the controllable component with the corresponding image processing logic, so that the controllable component updates the image according to the change of the vehicle control state;

[0045] S305, in response to the user's interactive operation on the vehicle model image, collecting corresponding parameters according to the interactive operation, and converting the parameters into vehicle control instructions;

[0046] S306, sending a vehicle control instruction to the vehicle, displaying a loading animation in the controllable component area in the vehicle model image interacted with by the user, and receiving a control result returned by the vehicle, and updating the display status of the controllable components in the vehicle model image according to the control result.

[0047] In some embodiments, obtaining a list of controllable functions of a vehicle, and generating a vehicle model image corresponding to a vehicle model according to the list of controllable functions, includes:

[0048] Obtain a list of controllable functions of the vehicle model, group the graphic elements corresponding to different functions of the vehicle, obtain internal graphic elements and external graphic elements, and generate corresponding internal vehicle model images and external vehicle model images according to the internal graphic elements and external graphic elements.

[0049] Specifically, different models have different supported vehicle control functions. This depends on the market positioning, functional design, and hardware configuration of the vehicle. For example, model A supports Bluetooth vehicle control and hot and cold cup functions, while model B supports Bluetooth vehicle control but does not have hot and cold cup functions, but has a cold and warm box function instead. Therefore, the system first needs to obtain a list of all controllable functions corresponding to the target vehicle in order to generate accurate vehicle model images for different models.

[0050] Furthermore, according to the obtained controllable function list, the graphic elements corresponding to the vehicle functions are grouped. The vehicle graphic elements are mainly divided into two parts: internal graphic elements and external graphic elements. Since the graphic size is limited when a complete vehicle image is displayed on a mobile phone screen, it is difficult to cover all vehicle control functions. Therefore, it is necessary to process the internal and external graphic elements of the vehicle separately in order to control different functions more finely.

[0051] In one example, the internal graphic elements correspond to the controllable functions inside the vehicle, such as air conditioning, seats, steering wheels, etc. For these functions, corresponding internal vehicle model images are generated respectively. For example: Figure 4 is a schematic diagram of an air conditioning control interface inside a vehicle provided in an embodiment of the present application, Figure 5 is a schematic diagram of the control interface of the seat and steering wheel provided in the embodiment of the present application; wherein, Figure 4 The air conditioning control interface inside the vehicle is displayed, through which the user can directly adjust the temperature inside the vehicle; Figure 5 The control interface of the seat and steering wheel is displayed, allowing users to easily operate seat heating, seat ventilation and steering wheel power.

[0052] In another example, the external graphic elements correspond to the exterior features of the vehicle, such as doors, sunroofs, front hoods, trunks, etc. In order to control these external features, the system generates corresponding external vehicle model images. For example: Figure 6 is a schematic diagram of a vehicle external control interface at an angle provided in an embodiment of the present application, Figure 7 is a schematic diagram of the control interface of the vehicle exterior from another perspective provided by an embodiment of the present application; wherein, Figure 6The design of the map makes it easy for users to operate the opening angles of the front hood and trunk, as well as the opening angles of the left door and window. Through this map, users can intuitively adjust the status of these external components. Figure 7 It is more suitable for controlling the opening angles of the four doors. In addition, users can also adjust the opening and closing angles of the sunroof through this chart to achieve precise control of the vehicle's exterior details.

[0053] Based on the above grouping results, the system generates internal and external vehicle model images respectively. Each vehicle model image is optimized for a specific functional area to ensure that users can intuitively and conveniently control each controllable function of the vehicle during operation. This method of grouping and image generation allows users to precisely adjust the internal and external functions of the vehicle in different interfaces, improving the overall user experience.

[0054] Through the above-mentioned method of this embodiment, this embodiment obtains a list of controllable functions of the vehicle and reasonably groups and generates images of graphic elements corresponding to the functions, thereby providing an intuitive and accurate vehicle control solution suitable for vehicle control needs of different models.

[0055] In some embodiments, cutting the controllable components in the car model image and determining the coordinate information corresponding to the controllable components includes:

[0056] Perform contour recognition on the controllable components in the car model image, and use a preset image cutting algorithm to recognize the contour lines of the controllable components based on the functions of the controllable components to determine the boundaries of the controllable components;

[0057] Cut the car model image along the contour line and decompose the car model image into multiple local images, each local image corresponds to a controllable component;

[0058] The coordinate information of the partial image in the car model image is determined, and the controllable components are marked according to the coordinate information, wherein the content part in the partial image is set to be opaque and the rest is set to be transparent.

[0059] Specifically, in order to achieve precise control of each controllable component in the car model image, the images of these components need to be segmented. In actual applications, the system uses a preset image segmentation algorithm to perform contour recognition on each controllable component in the car model image. The contour recognition process is based on the functions of the controllable components, such as doors, windows, sunroofs, etc. By identifying the contours of these components, the system can clearly define the boundaries of each component, thereby providing a reference for subsequent image segmentation.

[0060] Furthermore, after the contour recognition is completed, the system cuts the car model image along the recognized contour line. This process decomposes the car model image into multiple local images, each of which corresponds to a controllable component. For example, Figure 8 is a schematic diagram of a local image corresponding to a vehicle door and a vehicle window closed provided in an embodiment of the present application, Fig. 9 This is a schematic diagram of a partial image corresponding to a car door opening window provided in an embodiment of the present application. In this way, the car model image is divided into a number of independent image units, each of which can be independently controlled and displayed, thereby improving the user's control accuracy of the vehicle function.

[0061] Furthermore, after the car model image is cut, the system needs to determine the coordinate information of each partial image in the car model image. Specifically, the system records the starting point and size parameters of each partial image so that these images can be accurately redrawn in the vehicle control interface.

[0062] Furthermore, after cutting, each partial image sets the content part to opaque and the rest to transparent. This setting ensures that when the images are stitched together, the components can be correctly superimposed and displayed without image overlap or misalignment. In this way, the system can combine multiple partial images into a complete car model image and display it in the user interface.

[0063] Furthermore, in order to maintain the accuracy and consistency of the image on different display devices, the system also needs to scale the base image and all details. Assume that the width of the original car model image is 720 pixels and the height is 600 pixels, while the width of the current mobile phone screen is 375 pixels and the height is 667 pixels. According to business needs, the system will use the width as the scaling standard, calculate the scaling ratio (ratio = 720 / 375), and adjust the height and coordinate position of the image accordingly.

[0064] Furthermore, after the zoom is completed, the system draws all the details on the specified area of ​​the mobile phone screen according to the stored coordinate information. Each partial image is accurately placed in its corresponding position, ensuring that the user can intuitively interact with the vehicle functions during operation.

[0065] It should be noted that, in actual applications, there are multiple car model pictures according to the different states of the parts. For example, taking the car door as an example, the area occupied by a door when it is opened and when it is closed in the entire car model picture is different.

[0066] Therefore, for the precise segmentation algorithm of the controllable components (referred to as parts) of the door in the car model picture, one more step should be added before the contour recognition:

[0067] For all states of a part, let the number of states be N, then there are N car model pictures of the same size (other parts are not considered here for the time being)

[0068] Overlap N car model images to obtain the largest area of ​​the part, and use the outline of this area as the outline of the part.

[0069] Explanation: The concept of overlapping is easy to imagine using rubbing paper in real life. When it comes to specific program implementation, it can be:

[0070] First preset: whether the cut image is a rectangle or an irregular shape.

[0071] If it is an irregular shape, it will definitely be more complicated. If it is a rectangle, it is very simple, which is introduced as follows:

[0072] (1) The cut image is a rectangle

[0073] Take out the area of ​​the part in each picture, it must fall on a rectangle, for example, Fig.10 is a schematic diagram of a car model image in an actual scenario provided by an embodiment of the present application. Fig.11 is a schematic diagram of a car model image in another actual scenario provided by an embodiment of the present application. Fig.12 is a schematic diagram of a door area of ​​a car model image in an actual scenario provided by an embodiment of the present application, Fig.13 This is a schematic diagram of the door area of ​​a car model image in another actual scenario provided by an embodiment of the present application.

[0074] like Fig.10 and Fig.11 Shown are 2 car model pictures. Fig.12 The red area in Fig.10 The door area of ​​the car model image in is called area 1; Fig.13 The red area in Fig.11 The door area of ​​the car model image in is called area 2. The maximum value of the two red areas in four directions is taken to obtain the final rectangular area.

[0075] (2) The cut image is an irregular shape

[0076] The irregular area refers to the real part of the figure. Fig.14 is a schematic diagram of an area corresponding to an actual door portion of a car model image in an actual scene provided by an embodiment of the present application, Fig.15 FIG. 1 is a schematic diagram of the corresponding area of ​​the actual door portion of a car model image in another actual scene provided by an embodiment of the present application. Fig.14 and Fig.15 The yellow part is the actual door part.

[0077] This idea is similar to (1). For this irregular contour line, each point has coordinates. By traversing these points in order and taking the point corresponding to the maximum value in the four directions, all the outermost points can be obtained. Recording all the points is the largest irregular contour line.

[0078] In addition, it should be noted that in the actual process of drawing each part, the following operations are performed for each part:

[0079] 1. Get the status of this part returned by the server;

[0080] 2. Compare the status of the part with the local cache. If they are the same and have been drawn, return without processing;

[0081] 3. If they are different, then: get the picture corresponding to this state.

[0082] If it is the first drawing, the execution path is as follows:

[0083] (1) First, obtain the ID of a set of graphs. This ID can be a composite value, for example:

[0084] Model, color and their combination, for example: Model 1 + Color 1. Because generally speaking, the main difference between a set of car pictures is the model and color.

[0085] (2) Based on the identification ID, find the file path of the set of car images downloaded from the server to the local computer (multiple sets of car images are stored locally, each with its own ID). During this process, if any problems occur, such as the file path does not exist or the reading fails, take "measures".

[0086] (3) After finding the image, read the image into the memory and design an image identifier ID to form a mapping relationship. Through the image identifier ID, the corresponding image stored in the memory can be obtained.

[0087] If it is not the first time to draw, since the picture ID has been obtained last time, the picture in the memory mapping can be read directly.

[0088] Furthermore, the "measures" are divided into the following two optional types. Different strategies should be adopted for different parts and business scenarios:

[0089] 1. If any abnormal situation occurs, the default prepared image is used and stored in the memory map;

[0090] 2. If any exception occurs, no processing is done, no drawing is done here, and nothing can be stored in the memory map.

[0091] For example, in one example, the business scenario is: a situation that needs to be compatible is that this car model does not have a 2D group picture, but only a complete car picture, that is, it does not support the display of parts status. In this case: the strategy for the whole set of pictures adopts measure 2; and put this complete car picture under any part picture.

[0092] For other parts drawings, if they cannot be found when looking for them, they will not be drawn. However, this part drawing will be drawn, so this business effect is achieved.

[0093] For example, in another example, if all parts adopt measure 1, then: first, determine whether the vehicle set to be drawn is the same as the default set. Figure 1 If they are consistent, just draw them normally. If they are not consistent, then: whenever a part "uses the default prepared picture and stores it in the memory map", record it.

[0094] Furthermore, when all parts are drawn, it is necessary to check whether there are any parts recorded. If so, an error is reported to the server and the following measures are taken: either the recorded parts are rolled back and not drawn, or the other parts are rolled back and all are drawn using the default set of drawings.

[0095] If the color and shape of the set of drawings do not match the current drawing, inconsistencies will occur if the parts are partially drawn using the default drawing. In order to maintain visual consistency, the drawing is divided into two parts, right? Either use the default drawing or do not draw it. But in the final analysis, this is an error, so a warning should be reported to the server.

[0096] Through the above-mentioned method of this embodiment, this embodiment realizes fine control of each component in the vehicle control system by performing contour recognition, cutting and coordinate determination of the controllable components in the vehicle model image. The system can scale and accurately draw the image according to the screen size of different devices, thereby providing an intuitive and easy-to-operate vehicle control interface. Through these technical means, users can control various functions of the vehicle more accurately, improving the overall user experience of the vehicle control system.

[0097] In some embodiments, this embodiment further provides a method for grouping vehicle control functions of vehicle models, including distinguishing and processing simple vehicle control and complex vehicle control. Through this grouping strategy, the system can more flexibly manage and display vehicle control functions of different complexities, thereby optimizing the user's vehicle control experience.

[0098] Simple vehicle control functions refer to those control functions with fixed states and simple operations, which usually include four states: on, off, unavailable, and executing. In specific implementation, the system first identifies and groups these simple vehicle control functions.

[0099] In one example, taking the car lock control as an example, for the control of the car lock, the user only needs to switch between the four states of open, closed, unavailable, and executing. When the user selects the "open" or "closed" state, the system will directly replace the current car lock image to reflect its state change. For example:

[0100] When the doors are locked, the lock icon displays as "locked"; when the doors are unlocked, the icon updates to "unlocked".

[0101] This method of directly replacing images is very suitable for simple vehicle control because its operation logic is simple and does not involve multi-dimensional state changes.

[0102] Furthermore, this embodiment also provides a grouping and processing process of composite vehicle control. The composite vehicle control function is relatively complex. In addition to the basic four states, it also includes more state changes and adjustment functions. For example, the opening and closing angles of doors, windows, and sunshades, the brightness adjustment of driving lights, high beams, and low beams, etc. The realization of these functions requires additional image processing and operation logic.

[0103] Example 1: Door opening and closing angle adjustment

[0104] For the door opening and closing angle adjustment, the system needs to dynamically adjust the door image display to reflect the angle selected by the user. In specific implementation, the system adjusts the transparency, brightness or RGB value of the door image according to the user's sliding gesture or the angle value selected, or replaces it with an image of the corresponding angle. For example:

[0105] When the user adjusts the door angle in the car control app, the system updates the door display angle in real time; if the door is half open, the image shows the half-open state, and the corresponding shadow effect may be adjusted according to the angle change to increase the sense of reality.

[0106] Example 2: Light brightness adjustment

[0107] For the brightness adjustment of driving lights, high beams and low beams, the system needs to adjust the transparency, brightness or RGB value of the image according to the brightness value to show the lighting effects under different brightness. When implementing it specifically:

[0108] When the user slides the brightness adjustment bar, the system adjusts the brightness value of the light image according to the degree of sliding; the system also adjusts the shadow effect of the light to make the display at different brightness more in line with the actual situation.

[0109] It should be noted that different models have different functional configurations, so the grouping strategy will also vary. For example, some models do not support the headlight brightness adjustment function, so for these models, the headlight control will be classified as simple vehicle control, with only four states (on, off, unavailable, and in progress), and no complex brightness adjustment is required.

[0110] Through the above method of this embodiment, by grouping the vehicle control functions into simple vehicle control and complex vehicle control, this embodiment provides a flexible function management method. Simple vehicle control updates the state by directly replacing the image, while complex vehicle control involves more complex image processing and state adjustment to meet diverse user needs. Through this grouping process, the system can provide the best user experience in different vehicle control scenarios, maintaining the simplicity of operation while meeting the needs of complex scenarios.

[0111] In some embodiments, the vehicle control state of the controllable component is bound to the corresponding image processing logic so that the controllable component updates the image according to the change of the vehicle control state, including:

[0112] Define the vehicle control state for each controllable component and associate the vehicle control state with the corresponding image processing logic, where the vehicle control state is represented by enumeration or variable;

[0113] According to the changes in the vehicle control state, the image processing logic is called and executed using a preset function or method, so that the image of the controllable component automatically switches to the corresponding image or adjusts the corresponding image parameters when the vehicle control state changes.

[0114] Specifically, this embodiment also provides a method for binding the vehicle control state of the controllable components in the vehicle model with the corresponding image processing logic, so as to realize that the controllable components automatically update the image according to the change of the vehicle control state. This method enables the system to dynamically respond to the user's operation requirements by defining the vehicle control state and associating it with the corresponding image processing logic.

[0115] First, define the corresponding vehicle control state for each controllable component. The vehicle control state refers to the specific operating state of a certain function or component of the vehicle (such as doors, windows, lights, etc.) at a certain moment. For example, the state of a door can include "open", "closed", "opening", "unavailable", etc. These states can be represented by enumerations or variables, which are convenient for calling and processing in the program.

[0116] For example, in the iOS development environment, enumeration is a commonly used data type that can group multiple related state values ​​together. For example, you can define the following data structure, which contains different states of car doors and lights, as shown below:

[0117] 1) Basic status parent enumeration

[0118] enum Fundamental{

[0119] case turnOn

[0120] case turnOff

[0121] case diabled

[0122] case pending

[0123] }

[0124] 2) Extended subenumeration

[0125] enum carLight:Fundamental{

[0126] case luminace(degree:Double) / / Brightness

[0127] }

[0128] enum carDoor:Fundamental{

[0129] case turnOnAngle(angle:Double) / / door opening angle

[0130] }

[0131] …

[0132] In this way, the system can easily manage and expand different vehicle control states.

[0133] In addition, you can also add a member function or member function to the enumeration to specifically process the enumeration. Of course, you can also define an external function to get the enumeration value for processing. For example, add a member function to the enumeration as shown below:

[0134] func deal{

[0135] switch self{

[0136] case.turnOn:

[0137] / / Replace the image with the image in the "on" state

[0138] case.turnOff:

[0139] / / Replace the image with the image in the "off" state

[0140] case.diabled:

[0141] / / Replace the image with the image in the "unavailable" state

[0142] case.pending:

[0143] / / Replace the image with the image or animation layer in the "in progress" state

[0144] }

[0145] }

[0146] Subenumerations can override this function.

[0147] func deal{

[0148] switch self{

[0149] …

[0150] case.luminace(let degree):

[0151] / / According to the brightness degree, adjust the transparency or brightness or rgb value of the image, or directly replace it with a related image. In addition, you also need to adjust its shadow, etc.

[0152] }

[0153] func deal{

[0154] switch self{

[0155] …

[0156] case.turnOnAngle(let angle):

[0157] / / According to the door opening angle degree, rotate the image by angle x, or directly replace it with a related image. In addition, you also need to adjust its shadow, etc.

[0158] }

[0159] Furthermore, the defined vehicle control states are bound to the corresponding image processing logic. This process involves associating each vehicle control state with a set of image processing operations to ensure that when the state changes, the system can automatically update the image in the user interface.

[0160] For example, each change in the vehicle control state will trigger the corresponding image processing logic. For example, when the door changes from the "closed" state to the "open" state, the system will call the corresponding image processing function to update the image of the door to the "open" state image. At the same time, the system can adjust the transparency, brightness, shadow effect, etc. of the image as needed to enhance the visual effect.

[0161] In actual applications, when the user operates in the vehicle control app, the system will monitor the changes in the vehicle control status and execute the image processing logic by calling the preset function or method. The following is an example of the image update process:

[0162] User operation: The user chooses to open the door through the vehicle control app, and the system detects that the door status changes from "closed" to "opening".

[0163] Status update: The system updates the door status to "opening" based on user operations.

[0164] Calling image processing logic: The system calls the image processing logic associated with the "opening" state, updates the door image from the "closed" state to the "opened" state, and adjusts the transparency and shadow of the image in the process to simulate the opening process of the door.

[0165] State completed: When the door is fully opened, the system updates the door state to "open" and calls the image processing logic of the final state to keep the image in the "open" state.

[0166] Through this method, users can see the status changes of vehicle functional components in real time when operating the vehicle control app, which improves the intuitiveness and real-time nature of the interactive experience.

[0167] It should be noted that an important advantage of using enumerations or variables to represent vehicle control states is its scalability. When a new vehicle control function or state needs to be added, just add a new state value to the enumeration or variable and update the binding of the image processing logic accordingly. This design approach makes the system highly maintainable and scalable.

[0168] Through the above method of this embodiment, this embodiment realizes the dynamic image update of each functional component in the vehicle model by binding the vehicle control state of the controllable component with the image processing logic. The system can automatically call the corresponding image processing logic according to the change of the vehicle control state to ensure that the image in the user interface is consistent with the actual vehicle state. By using enumeration or variables to manage the vehicle control state, the system not only simplifies state management, but also provides good scalability to cope with the addition and adjustment of future functions.

[0169] In some embodiments, this embodiment further provides an implementation process of how the system obtains the latest status of the vehicle from the server and displays the status in the user interface (UI) diagram when the user enters the vehicle control interface. This process ensures that the user can instantly see the current status of the vehicle and perform further operations.

[0170] When a user opens the car control app and enters the UI page containing the vehicle model, the client will immediately send a request to the server to obtain the current control status information of the vehicle. This status information covers multiple controllable components of the vehicle, such as the opening and closing status of the doors, the brightness of the lights, the temperature setting of the air conditioner, etc.

[0171] After the client receives the vehicle control status list from the server, it will automatically bind these states to the pre-defined components in the UI map. In the previous implementation, the system has bound the state of each controllable component to the corresponding image processing logic. This means that when the client obtains the latest state from the server, the system can directly call the corresponding image processing logic to update the UI map so that it accurately reflects the current state of the vehicle.

[0172] For example, Fig.16 It is a schematic diagram of a vehicle model when the door is in an open state provided in an embodiment of the present application. Fig.16 A specific application scenario is demonstrated, that is, the right front door of the vehicle is in an open state. The system automatically updates the vehicle model in the UI diagram based on this state, allowing the user to intuitively see and confirm the actual situation of the vehicle.

[0173] like Fig.16 As shown in the figure, suppose that when the user enters the vehicle control interface, the door status obtained by the system from the server is "open". Since the door opening and closing status and the corresponding image have been pre-bound in the system, when the system detects that the door is in the open state, it will immediately call the image processing logic and update the door image to the "open" state display. At this time, the user sees the actual situation of the door being open on the UI image.

[0174] exist Fig.16 In the scene shown, the right front door of the vehicle is open. After obtaining this state, the client will switch the image corresponding to the door from "closed" to "open" by calling the image processing logic. In the user interface, the image of the vehicle model will show that the right front door is open, reflecting the real-time situation of the vehicle. This process is automatic and instant, and does not require additional user operations.

[0175] In this way, when the user enters the vehicle control interface, he can immediately see the current status of the vehicle and perform corresponding operations based on the actual situation, such as closing the door, adjusting the brightness of the lights, or adjusting the air-conditioning temperature.

[0176] Through the above method of this embodiment, this embodiment describes in detail how the system obtains the latest status of the vehicle and updates the UI image when entering the page where the UI image is located. By obtaining the vehicle control status from the server and binding it with the predefined image processing logic, the system can display the current status of the vehicle in real time in the user interface. This not only improves the intuitiveness of the operation, but also ensures the user's precise control of various vehicle functions.

[0177] In some embodiments, in response to the user's interactive operation on the vehicle model image, corresponding parameters are collected according to the interactive operation, and the parameters are converted into vehicle control instructions, including:

[0178] Monitor the user's interactive operations on the controllable components in the car model image, where the interactive operations include clicks, slides, and gesture operations that change based on time and frequency;

[0179] In response to the user's click operation, switching between the current vehicle control state and the corresponding image processing logic;

[0180] In response to the user's sliding operation, the distance, direction and speed of the user's finger sliding are collected and converted into vehicle control parameters;

[0181] In response to the user's long press operation, relevant parameters are collected according to the changes in time and frequency, and corresponding vehicle control instructions are generated according to the collected parameters.

[0182] Specifically, this embodiment also introduces a method for generating vehicle control instructions in response to a user's interactive operation on a vehicle model image. The method monitors various gesture operations of the user, collects relevant parameters, and converts these parameters into specific vehicle control instructions, thereby achieving precise control of vehicle functions.

[0183] When users interact with the vehicle model image in the vehicle control app, the system monitors the user's operation behavior in real time. These operations mainly include clicks, slides, and long presses based on time and frequency changes. By monitoring these operations, the system can obtain user intentions and generate corresponding control instructions.

[0184] 1) Click operation processing

[0185] Clicking is the simplest form of interaction. When a user clicks on a controllable component of the car model image, the system detects the action and responds immediately. Clicking is usually used to switch the state of a component.

[0186] For example:

[0187] When the user clicks on the door image, the system will switch the current door status between "open" and "closed". If the door is currently closed, the door will open after clicking, and vice versa.

[0188] 2) Handling of sliding operations

[0189] Sliding operation is applicable to those controllable components that need to be adjusted, such as the opening and closing angle of the door, the rotation angle of the steering wheel, etc. When the user slides, the system will collect the distance, direction and speed of the user's finger sliding, and convert this information into specific vehicle control parameters.

[0190] For example, when a user slides his finger to open a car door, the system detects the direction and distance of the finger's movement in real time. Based on these parameters, the system calculates the angle at which the door should be opened. If the sliding angle exceeds the maximum opening and closing angle of the door, the system will limit further sliding to ensure that the door does not exceed the physical limit.

[0191] For example, when a user slides the steering wheel, the system will limit the maximum rotation angle of the steering wheel. For example, the steering wheel can be rotated to the left or right at most three times, so sliding operations exceeding three times will no longer be accepted by the system.

[0192] 3) Long press operation processing

[0193] Long press operations are usually used for functions that require time dimension control, such as adjusting the brightness of lights. When a user presses and holds a component image, the system starts timing and collects relevant parameters based on the user's finger movement speed and press duration.

[0194] For example, when the user adjusts the brightness of the car lights, they press and hold the light image while sliding their finger slightly. The system calculates the step size of the light brightness change based on the sliding speed and duration of the finger, and a predetermined time segment (such as 1 second). After the user lifts the finger, the system will generate the final brightness value based on the collected parameters and adjust the actual brightness of the car lights.

[0195] In addition, the system also provides or customizes the use of controls. For some functions that are difficult to accurately control with gestures, such as adjusting the air conditioning temperature, the system provides controls such as sliders or step buttons. These controls allow users to adjust in a more precise way. For example:

[0196] On the air conditioning control interface, users can adjust the temperature in the car by sliding the temperature adjustment bar. The system generates corresponding temperature adjustment instructions based on the change in the slider value, ensuring that users can accurately control the ambient temperature in the car.

[0197] This embodiment not only covers simple click, slide and long press operations, but also allows users to define more complex custom gestures according to different functions to achieve more efficient and flexible vehicle control. For example:

[0198] Users can define a double-click operation to quickly open the door, and combine long press and sliding gestures to achieve more detailed control.

[0199] The following are some examples of custom gestures and provide the specific implementation of the custom gestures in iOS. The details are as follows:

[0200] 1. Open (close) car lock + car door gesture

[0201] Interaction design: The car door is closed at the beginning. If the user presses the door area for a period of time (such as more than 1 second), an animation effect will be given to the user to inform that the door has been opened. The animation effect can be consistent with the real car, or it can be inconsistent. For example, when unlocking a real car, the lights flash and the horn are honked, so the car model also flashes the lights and honks, and additional animation effects can be added, such as shaking the phone, to remind the user. At the same time, send the car control command: unlock the car.

[0202] Then, the user still keeps his finger on the screen and opens the door to any angle within the allowed range. When the user lifts his finger, the vehicle control command is sent: the vehicle doors are opened synchronously to the same angle;

[0203] If the user's finger still does not leave the screen, the car door is moved back to the closed position and remains stationary for a period of time (such as more than 1 second), a vehicle control command is sent: close the car lock.

[0204] The same applies to some link operations. For example, if the car door is originally open, the user touches the door area with his finger, moves the door back to the closed position and keeps it still for more than a period of time (such as more than 1 second), then the vehicle control command is sent: close the car lock.

[0205] The car door is closed. If the user presses the car door area for a period of time (such as more than 1 second), an animation effect will be given to the user to inform that the car door is open. At the same time, a car control command is sent: unlock the car.

[0206] 2. Gesture replacement

[0207] In the above example, the gesture of turning on and off the car lock can be changed to any action by long pressing, such as drawing a circle, single clicking, double clicking, sliding up and down, etc.

[0208] 3. Anti-accidental touch mechanism

[0209] It is easy to accidentally touch the phone when it is in your pocket. In order to prevent the command control of the 2D car model caused by accidental touch, an anti-accidental touch mechanism can be designed: before starting all car control command interactions, the user must "unlock" with a specific gesture. This gesture can be customized or a default one can be set according to business needs.

[0210] For example, any detail area needs to be pressed for more than n seconds before subsequent operations can be performed. Pressing for n seconds is an "unlock" gesture; or, any detail area needs to be double-clicked twice before subsequent operations can be performed.

[0211] The following is a detailed description of the implementation methods of the above custom gestures, which may include the following:

[0212] Case 1: If the gesture can be broken down into basic gestures supported by the system

[0213] The development method of system gestures is simpler, so if it can be split (the gestures in the above examples can be split), try to use the basic gesture combinations supported by the system.

[0214] Taking the first example of "open (close) car lock + door gesture" as an example, it is a long press and then a sliding gesture.

[0215] then:

[0216] 1) In the door area, add two gestures: long press gesture UILongPressGestureRecognizer and slide gesture UIPanGestureRecognizer.

[0217] 2) In the response function of the long press gesture, the state of the gesture is judged: if the state is .began, the animation effect is added to the detail area and the vehicle control command is sent at the same time: unlock the car; if the state is .ended or .cacelled, the added animation is removed.

[0218] 3) Set a proxy for the sliding gesture. When the gesture changes, you will be notified: enter a callback function of the proxy.

[0219] 4) If the proxy function enters the callback function gestureRecognizerShouldBegin that it wants to start, it needs to judge the long press gesture; if the state of the long press gesture is .possible or .failed, it returns false, indicating that the sliding gesture is not allowed to start; if the state of the long press gesture is other, it returns true, indicating that the unified sliding gesture starts.

[0220] 5) You also need to rewrite the proxy function shouldRecognizeSimultaneouslyWith and return it to true, which means that two gestures are recognized at the same time. This will not force all other gestures to fail to be recognized as the system defaults: after one gesture is recognized successfully, all other gestures will be forced to fail to be recognized:

[0221] func gestureRecognizer(_g:UIGestureRecognizer,

[0222] shouldRecognizeSimultaneouslyWith g2:UIGestureRecognizer)->Bool{

[0223] return true

[0224] }

[0225] Scenario 2: If the gesture cannot be decomposed into basic gestures supported by the system

[0226] This is a little more complicated. You need to use custom gestures to rewrite the system's three touch functions:

[0227] touchesBegan, touchesMoved, touchesEnded, taking the "anti-mistouch mechanism" as an example, if the unlock gesture is: the user slides his finger up and down.

[0228] Add a member variable horiz to record the sliding direction; add a member variable marked as the basis for whether to allow subsequent gestures, the default value is false.

[0229] In touchesBegan, determine the number of clicks. The method to obtain it is to get the first touch object and then get its tapCount property: touches.first!.tapCount. It must be equal to 1, otherwise it is multiple clicks, which does not meet the requirements and is excluded.

[0230] In touchesMoved, use the previous address of the moving point (x direction + y direction) minus the next address (the previous address is obtained by:) to get the delta distance to determine whether the user's current moving direction is horizontal or vertical. The code is as follows:

[0231] let then=t.previousLocation(in:self)

[0232] let now = t.location(in:self)

[0233] let deltaX=abs(then.x-now.x)

[0234] let deltaY=abs(then.y-now.y)

[0235] self.horiz=deltaX>=deltaY

[0236] As long as you find that the direction is horizontal, exit, which means it is not an up or down sliding gesture.

[0237] When it is found that the direction is vertical, the delta distance is used to determine whether it is an up-then-down sliding gesture.

[0238] If so, set the flag bit to true, otherwise set the flag bit to false.

[0239] Through the method of the present embodiment described above, the system can respond to various user interactive operations on the car model image, collect relevant parameters in real time and generate vehicle control instructions. Clicking operation is used for simple state switching, sliding operation is used to adjust the angle or position of the controllable component, and long pressing operation is suitable for time and frequency related control requirements. For complex functions, the system also provides support for custom gestures and controls to meet the diverse operation needs of users.

[0240] In some embodiments, a vehicle control instruction is sent to the vehicle, and a loading animation is displayed in a controllable component area in a vehicle model image interacted with by the user, including:

[0241] When the user's interactive operation is detected to be completed, a response event is triggered and the vehicle control command is sent to the vehicle. During the period between sending the vehicle control command and receiving the control result, a loading animation is displayed in the area of ​​the controllable component where the user interacts. The loading animation is used to prompt the user that the current operation is in progress.

[0242] Among them, during the display period of the loading animation effect, the user's interactive operations in the area of ​​the controllable component are temporarily prohibited until the vehicle returns the control result and updates the status of the corresponding controllable component.

[0243] Specifically, this embodiment also introduces a method for displaying a loading animation in the controllable component area of ​​the vehicle model image with which the user interacts during the process of the user operating the vehicle control command. The method monitors the user's operation behavior, sends a control command to the vehicle after the operation is completed, and displays a loading animation in the user interface to prompt the user that the current operation is in progress, and temporarily prohibits further interactive operations during this period.

[0244] When a user operates a controllable component in the car control app (for example, clicking on the door image to open the door), the system will monitor the user's interactive behavior in real time. When the user completes the operation, such as the moment the finger is lifted, the system will immediately trigger a response event. At this time, the system will begin to collect relevant parameters of the user's operation, such as the on / off state selected by the user in the UI interface, the opening angle of the door, the brightness of the headlights, etc.

[0245] These parameters are generated in real time based on the user's interactive operations, and the system converts these parameters into control instructions that meet the requirements of the vehicle control interface. For example, if the user chooses to open the door, the system will generate the corresponding door control instruction and prepare to send the instruction to the vehicle's control system.

[0246] Furthermore, after the control command is generated, the system will immediately send the command to the vehicle's control system. However, there is usually a certain delay between the command being sent and the feedback result being returned by the vehicle, which may last from 1 second to several seconds. In order to provide users with better operation feedback, the system will display a loading animation in the controllable component area where the user interacts during this period.

[0247] For example, for more specific controllable components, such as a temperature regulator, the system can directly overlay a loading animation on the image of the component to prompt the user that the current operation is being processed.

[0248] For example, for details that are not suitable for direct overlay of motion effects, the system can take other approaches, such as overlaying an overall loading animation on the entire car model image, or displaying a progress bar at the top of the interface to prompt the user that the operation is in progress.

[0249] Furthermore, in order to prevent users from performing repeated or conflicting operations during the vehicle control command processing, the system will temporarily prohibit users from further interactive operations in the controllable component area during the loading of the dynamic effect display. In other words, while waiting for the vehicle to feedback the results, the user cannot perform new operations on the same controllable component until the vehicle returns the control results and updates the corresponding component status.

[0250] During the loading animation display, the system locks the controllable component area where the user interacts, preventing the user from performing new clicks or sliding operations during the processing. This lock ensures the consistency of the user interface operation and avoids control conflicts that may be caused by repeated instructions.

[0251] For other component areas that are not affected by the current operation, the system can decide whether to allow continued interaction based on the specific needs of the vehicle model. For example, some advanced models support sending multiple different vehicle control commands at the same time. In this case, the system can allow users to continue to operate other components while loading animations; for models that do not support multiple commands, the system will close the interaction of the entire interface until the current operation is completed.

[0252] Furthermore, once the vehicle returns the control result, the system will immediately update the display status of the corresponding controllable components in the user interface. At this time, the loading animation will automatically disappear, and the user can clearly see the result of the operation, such as the door has been opened or the temperature has been adjusted to the specified value. At the same time, the system will release the previous interaction lock and restore the normal operation permissions of the component area, allowing the user to continue other operations.

[0253] Through the method of the present embodiment described above, the present embodiment realizes the visualization of user operation feedback by sending control instructions to the vehicle and displaying loading animations during instruction processing. The system ensures the consistency of user interface response and smooth operation by real-time monitoring of user interaction, locking the operation area, and timely updating the status. This method not only improves the user experience, but also effectively prevents potential conflicts caused by repeated operations.

[0254] In some embodiments, the display state of the controllable components in the car model image is updated according to the control result, including:

[0255] Determine the current state of the controllable components in the car model image according to the control result, and update the display state of the corresponding controllable components in the car model image according to the current state of the controllable components;

[0256] Send a request to the server for the latest status, receive the latest vehicle control status of each controllable component returned by the server, and update the vehicle control list according to the latest vehicle control status of the controllable component;

[0257] Alternatively, the client requests full refresh data from the server at a preset time interval. When the server detects that the vehicle control status has not changed, it returns a flag. When the server detects that the vehicle control status has changed, it updates the client interface based on the returned full refresh data.

[0258] Specifically, this embodiment further provides a method for updating the display status of controllable components in a vehicle model image according to the vehicle control result. The method obtains the latest vehicle control status from a server or ensures that the display status of the user interface is synchronized with the actual status of the vehicle through a timing request mechanism.

[0259] When the user sends a control command through the vehicle control app, the vehicle executes the command and returns the control result. The system first determines the current status of each controllable component in the vehicle model image based on the control result. For example, if the control result shows that the door has been successfully opened, the system will update the status of the door component to "open" and display the image of the door open on the user interface.

[0260] For example, the system will call the image processing logic corresponding to this state and switch the door part in the car model image to the "open" state to ensure that the user interface is consistent with the actual situation of the vehicle.

[0261] In some scenarios, in order to ensure that the status of all controllable components is synchronized with the actual status of the vehicle, the system may choose to perform a full refresh request. This operation is particularly suitable for complex scenarios with multiple points of operation.

[0262] Furthermore, for a full refresh, the client sends a request to the server to obtain the full state data of the vehicle. The server returns the latest state of each controllable component, and the client applies these states to the car model image in the user interface. For example, if the user operates a car door in the App and manually opens another door next to the car, a full refresh ensures that the state of all doors is correctly displayed in the user interface.

[0263] In this way, full refresh requests can avoid state inconsistencies caused by multi-point operations. However, since full refresh increases the amount of data transmission and may affect system performance, it is an optional solution and is usually used in scenarios that ensure synchronization and consistency.

[0264] Furthermore, in order to reduce the burden of frequent data transmission and ensure the real-time display of the interface, the system can also adopt a timed request solution. The specific implementation is as follows:

[0265] The client sets a predetermined time interval (for example, every 5 seconds) and periodically sends a full refresh request to the server. If the server detects that the vehicle's control status has not changed since the last request, it only returns a flag to inform the client that the status has not changed. In this case, the client can keep the existing display status unchanged. If the server detects that the vehicle's control status has changed (for example, the user manually operates a door outside the vehicle), the server returns the full status data, and the client updates the user interface based on this data. This timed request scheme can not only ensure the real-time performance of the system, but also maintain the accuracy of the interface display while saving data traffic.

[0266] Furthermore, when the client sends a vehicle control command and waits for the result, the system will keep the UI part being processed unchanged. Specifically, in a timed request or full refresh operation, if a controllable component is detected to be waiting for a control result, the display state of the component will remain unchanged until the control result is returned and the corresponding state is updated. This mechanism can avoid interface flickering or state confusion caused by the refresh operation before the control result is returned.

[0267] Furthermore, once the server returns the latest control results and the client updates the interface display status according to these results, the system will restore the previously disabled user interaction function. At this time, the loading animation will be hidden and the user can operate the component again.

[0268] For example, after the control command is executed, the system removes the interaction restrictions on the component area, and the user can click, slide, and perform other operations on the corresponding component again. The loading animation disappears automatically after the status is updated, and the interface returns to normal operation mode.

[0269] Through the method of the present embodiment described above, the present embodiment ensures that the display of the user interface is synchronized with the actual state of the vehicle by updating the state of the controllable components in the vehicle model image according to the control results. Through the full refresh and timed request scheme, the system can provide accurate state updates and smooth user experience while ensuring data flow and performance. By loading dynamic effects and interactive recovery mechanisms, the system provides real-time feedback during user operation, improving the intuitiveness and consistency of operation.

[0270] In some embodiments, this embodiment also provides a cache mechanism to improve the response speed and user experience of the vehicle control app and reduce repeated data processing and network requests. The cache implementation process includes storing and managing various data related to vehicle control so that it can be quickly loaded and responded to when the user operates. The specific implementation process and steps of the cache mechanism are explained in detail below in conjunction with specific embodiments, which may include the following:

[0271] The main purpose of caching is to reduce the frequent requests of applications to the server during operation, thereby improving the system's response speed and operating efficiency. By pre-storing commonly used data (such as pictures, coordinates, processing logic, etc.) in the cache, when the user accesses or operates again, the system can directly extract this data from the cache without having to regenerate or obtain it from the server every time. This not only saves network resources, but also improves the user experience.

[0272] First, determine the data that needs to be cached. During the use of the vehicle control app, a large amount of data is reused. This data can be divided into the following categories:

[0273] 1) Image segmentation method: UI images of different car models need to be segmented in different ways to achieve precise interactive control.

[0274] 2) Image set: includes image materials of different parts of the vehicle, such as images of doors, windows, lights, etc.

[0275] 3) Detailed coordinate sets: The specific position and size coordinates of each interactive area to ensure accurate positioning on different devices.

[0276] 4) Details processing: processing logic and state binding, such as how to switch states by clicking, how to adjust the angle by sliding, etc.

[0277] 5) Vehicle control parameters: such as the door opening and closing angle, the brightness of the lights, etc. The specific parameter values ​​determine how to send vehicle control commands.

[0278] Next, determine the location of the cache. Depending on the application requirements and the characteristics of different vehicle models, the cache can be stored in different locations, including:

[0279] 1) Server-side cache: The server stores a complete data set of all vehicle models, and when the client needs it, it sends the corresponding data based on the vehicle model.

[0280] 2) Cloud Cache: Data is stored in the cloud and can be accessed by different devices or users, making it easy to synchronize data on different devices.

[0281] 3) Database cache: Store data in a local database, which can be read and written quickly.

[0282] 4) Client local cache: A pre-loaded cache can be stored on the client device for quick startup and initial use. This cache can be partial or complete data, depending on the needs.

[0283] Then, the storage and update strategy of cached data, when the user uses the vehicle control app for the first time, the system will obtain all the required data from the server according to the vehicle model, and cache it locally or in the cloud for subsequent use.

[0284] The data in the cache needs to be updated regularly, especially the data related to the vehicle status change. The system can set a time interval to regularly obtain the latest data from the server and update the cache. For some dynamically changing data (such as vehicle control status), an on-demand update strategy can be adopted, that is, when the user operates or the vehicle status changes, the relevant cache content is updated in real time. Set the validity period of the cache, and it will automatically expire after the expiration and re-obtain the latest data from the server. This can prevent functional failure or display errors caused by outdated cache content.

[0285] In addition, the cache is used in this way: when the user opens the App again or switches to a different function page, the system can directly extract the required data from the cache to avoid repeated network requests and data processing. This greatly improves the speed of interface loading. In the case of unstable network or unavailable server, the system can use the local cached data to provide basic functions to ensure that users can still perform regular operations.

[0286] Finally, this embodiment also provides cache management. The core of cache management is to balance the storage capacity and access efficiency of data. Cache management includes the following contents:

[0287] Regularly clean up cached data that is no longer in use to free up storage space and ensure system performance. Set a higher cache priority for commonly used and critical data to ensure that this data can be updated and accessed quickly. Use multi-level cache when necessary, such as reading data from the local cache first, and reading from the cloud or server cache if it misses.

[0288] Through the method of the present embodiment described above, the cache mechanism improves the system response speed, reduces the network burden, and ensures the continuity and fluency of user operations by storing and managing various data. Through the reasonable management and update of cache data, the system can provide accurate and timely vehicle control experience while ensuring performance.

[0289] The following is an embodiment of the device of the present application, which can be used to execute the embodiment of the method of the present application. For details not disclosed in the embodiment of the device of the present application, please refer to the embodiment of the method of the present application.

[0290] Fig.17 is a schematic diagram of the structure of a visual vehicle control device based on a vehicle model provided in an embodiment of the present application. Fig.17 As shown, the visual vehicle control device based on the vehicle model includes:

[0291] The generating module 1701 is configured to obtain a list of controllable functions of the vehicle, and generate a vehicle model image corresponding to the vehicle model according to the list of controllable functions, wherein the vehicle model image includes a plurality of controllable components of the vehicle;

[0292] A cutting module 1702 is configured to cut the controllable components in the car model image and determine the coordinate information corresponding to the controllable components;

[0293] A drawing module 1703 is configured to draw the car model image and the controllable components on the interface of the client according to the interface size of the client and the coordinate information of the controllable components;

[0294] The binding module 1704 is configured to bind the vehicle control state of the controllable component with the corresponding image processing logic, so that the controllable component updates the image according to the change of the vehicle control state;

[0295] The conversion module 1705 is configured to respond to the user's interactive operation on the vehicle model image, collect corresponding parameters according to the interactive operation, and convert the parameters into vehicle control instructions;

[0296] The update module 1706 is configured to send the vehicle control instruction to the vehicle, display the loading animation in the controllable component area in the vehicle model image where the user interacts, and receive the control result returned by the vehicle, and update the display status of the controllable component in the vehicle model image according to the control result.

[0297] In some embodiments, Fig.17The generation module 1701 obtains a list of controllable functions of the vehicle corresponding to the vehicle model, groups the graphic elements corresponding to different functions of the vehicle, obtains internal graphic elements and external graphic elements, and generates corresponding internal vehicle model images and external vehicle model images according to the internal graphic elements and external graphic elements.

[0298] In some embodiments, Fig.17 The cutting module 1702 identifies the contour of the controllable component in the car model image, and uses a preset image cutting algorithm to identify the contour line of the controllable component based on the function of the controllable component to determine the boundary of the controllable component; cuts the car model image along the contour line to decompose the car model image into multiple local images, each of which corresponds to a controllable component; determines the coordinate information of the local image in the car model image, and marks the controllable component according to the coordinate information, wherein the content part in the local image is set to be opaque and the rest is set to be transparent.

[0299] In some embodiments, Fig.17 The binding module 1704 defines a vehicle control state for each of the controllable components, and associates the vehicle control state with a corresponding image processing logic, wherein the vehicle control state is represented by an enumeration or a variable; according to changes in the vehicle control state, the image processing logic is called and executed using a preset function or method, so that the image of the controllable component automatically switches to a corresponding image or adjusts a corresponding image parameter when the vehicle control state changes.

[0300] In some embodiments, Fig.17 The conversion module 1705 monitors the user's interactive operations on the controllable components in the car model image, wherein the interactive operations include clicks, slides, and gesture operations based on time and frequency changes; in response to the user's click operation, switching between the current vehicle control state and the corresponding image processing logic; in response to the user's slide operation, the distance, direction, and speed of the user's finger slide are collected and converted into vehicle control parameters; in response to the user's long press operation, relevant parameters are collected according to the changes in time and frequency, and corresponding vehicle control instructions are generated according to the collected parameters.

[0301] In some embodiments, Fig.17When the update module 1706 detects that the user's interactive operation is completed, a response event is triggered, and the vehicle control instruction is sent to the vehicle. During the time period between sending the vehicle control instruction and receiving the control result, a loading animation is displayed in the area of ​​the controllable component where the user interacts, and the loading animation is used to prompt the user that the current operation is in progress; wherein, during the display period of the loading animation, the user's interactive operation in the area of ​​the controllable component is temporarily prohibited until the vehicle returns the control result and updates the status of the corresponding controllable component.

[0302] In some embodiments, Fig.17 The update module 1706 determines the current state of the controllable components in the car model image according to the control results, and updates the display state of the corresponding controllable components in the car model image according to the current state of the controllable components; sends a request for obtaining the latest state to the server, and receives the latest vehicle control state of each controllable component returned by the server, and updates the vehicle control list according to the latest vehicle control state of the controllable component; or, uses the client to request full refresh data from the server at a preset time interval, and when the server detects that the vehicle control state has not changed, it returns a flag bit, and when the server detects that the vehicle control state has changed, it updates the client interface according to the returned full refresh data.

[0303] It should be understood that the size of the serial numbers of the steps in the above embodiments does not mean the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present application.

[0304] Fig.18 1 is a schematic diagram of the structure of the electronic device 18 provided in the embodiment of the present application. Fig.18 As shown, the electronic device 18 of this embodiment includes: a processor 1801, a memory 1802, and a computer program 1803 stored in the memory 1802 and executable on the processor 1801. When the processor 1801 executes the computer program 1803, the steps in the above-mentioned method embodiments are implemented. Alternatively, when the processor 1801 executes the computer program 1803, the functions of the modules / units in the above-mentioned device embodiments are implemented.

[0305] Exemplarily, the computer program 1803 may be divided into one or more modules / units, which are stored in the memory 1802 and executed by the processor 1801 to complete the present application. The one or more modules / units may be a series of computer program instruction segments capable of completing specific functions, which are used to describe the execution process of the computer program 1803 in the electronic device 18.

[0306] The electronic device 18 may be a desktop computer, a notebook, a PDA, a cloud server, or other electronic device. The electronic device 18 may include, but is not limited to, a processor 1801 and a memory 1802. Those skilled in the art will appreciate that Fig.18 It is only an example of the electronic device 18 and does not constitute a limitation of the electronic device 18. It may include more or fewer components than shown in the figure, or a combination of certain components, or different components. For example, the electronic device may also include input and output devices, network access devices, buses, etc.

[0307] The processor 1801 may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field-programmable gate arrays (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor may be a microprocessor or the processor may be any conventional processor, etc.

[0308] The memory 1802 may be an internal storage unit of the electronic device 18, for example, a hard disk or memory of the electronic device 18. The memory 1802 may also be an external storage device of the electronic device 18, for example, a plug-in hard disk, a smart media card (SMC), a secure digital (SD) card, a flash card (FlashCard), etc. equipped on the electronic device 18. Further, the memory 1802 may also include both an internal storage unit of the electronic device 18 and an external storage device. The memory 1802 is used to store computer programs and other programs and data required by the electronic device. The memory 1802 may also be used to temporarily store data that has been output or is to be output.

[0309] The technicians in the relevant field can clearly understand that for the convenience and simplicity of description, only the division of the above-mentioned functional units and modules is used as an example for illustration. In practical applications, the above-mentioned function allocation can be completed by different functional units and modules as needed, that is, the internal structure of the device can be divided into different functional units or modules to complete all or part of the functions described above. The functional units and modules in the embodiment can be integrated in a processing unit, or each unit can exist physically separately, or two or more units can be integrated in one unit. The above-mentioned integrated unit can be implemented in the form of hardware or in the form of software functional units. In addition, the specific names of the functional units and modules are only for the convenience of distinguishing each other, and are not used to limit the scope of protection of this application. The specific working process of the units and modules in the above-mentioned system can refer to the corresponding process in the aforementioned method embodiment, which will not be repeated here.

[0310] In the above embodiments, the description of each embodiment has its own emphasis. For parts that are not described or recorded in detail in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.

[0311] Those of ordinary skill in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.

[0312] In the embodiments provided in the present application, it should be understood that the disclosed devices / computer equipment and methods can be implemented in other ways. For example, the device / computer equipment embodiments described above are only schematic. For example, the division of modules or units is only a logical function division. There may be other division methods in actual implementation. Multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.

[0313] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.

[0314] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.

[0315] If the integrated module / unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the present application implements all or part of the processes in the above-mentioned embodiment method, and can also be completed by instructing the relevant hardware through a computer program. The computer program can be stored in a computer-readable storage medium, and the computer program can implement the steps of the above-mentioned various method embodiments when executed by the processor. The computer program may include computer program code, which may be in source code form, object code form, executable file or some intermediate form. Computer-readable media may include: any entity or device capable of carrying computer program code, recording medium, U disk, mobile hard disk, disk, optical disk, computer memory, read-only memory (ROM), random access memory (RAM), electric carrier signal, telecommunication signal and software distribution medium, etc.

[0316] The above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. These modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present application, and should all be included in the protection scope of the present application.

Claims

1. A visual vehicle control method based on a vehicle model, characterized in that: include: Obtaining a list of controllable functions of the vehicle, and generating a vehicle model image corresponding to the vehicle model according to the list of controllable functions, wherein the vehicle model image includes a plurality of controllable components of the vehicle; Cutting the controllable components in the car model image and determining the coordinate information corresponding to the controllable components; Drawing the car model image and the controllable components on the interface of the client according to the interface size of the client and the coordinate information of the controllable components; Binding the vehicle control state of the controllable component with the corresponding image processing logic, so that the controllable component updates the image according to the change of the vehicle control state; In response to a user's interactive operation on the vehicle model image, corresponding parameters are collected according to the interactive operation, and the parameters are converted into vehicle control instructions; The vehicle control instruction is sent to the vehicle, a loading animation is displayed in the controllable component area in the vehicle model image where the user interacts, and a control result returned by the vehicle is received, and the display status of the controllable component in the vehicle model image is updated according to the control result.

2. The method according to claim 1, characterized in that The step of obtaining a list of controllable functions of the vehicle and generating a vehicle model image corresponding to the vehicle model according to the list of controllable functions includes: Obtain a list of controllable functions of the vehicle model corresponding to the vehicle, group the graphic elements corresponding to different functions of the vehicle to obtain internal graphic elements and external graphic elements, and generate corresponding internal vehicle model images and external vehicle model images according to the internal graphic elements and external graphic elements.

3. The method according to claim 1, characterized in that: The step of cutting the controllable components in the vehicle model image and determining coordinate information corresponding to the controllable components includes: Performing contour recognition on the controllable component in the car model image, and using a preset image cutting algorithm, based on the function of the controllable component, identifying the contour line of the controllable component to determine the boundary of the controllable component; Cutting the car model image along the contour line to decompose the car model image into a plurality of partial images, each of the partial images corresponding to a controllable component; Determine the coordinate information of the partial image in the car model image, and mark the controllable component according to the coordinate information, wherein the content part in the partial image is set to be opaque and the rest is set to be transparent.

4. The method according to claim 1, characterized in that The step of binding the vehicle control state of the controllable component with the corresponding image processing logic so that the controllable component updates the image according to the change of the vehicle control state includes: Defining a vehicle control state for each of the controllable components, and associating the vehicle control state with a corresponding image processing logic, wherein the vehicle control state is represented by an enumeration or a variable; According to the change of the vehicle control state, the image processing logic is called and executed using a preset function or method, so that the image of the controllable component automatically switches the corresponding image or adjusts the corresponding image parameters when the vehicle control state changes.

5. The method according to claim 1, characterized in that The step of responding to the user's interactive operation on the vehicle model image, collecting corresponding parameters according to the interactive operation, and converting the parameters into vehicle control instructions includes: Monitoring the user's interactive operations on the controllable components in the car model image, wherein the interactive operations include clicks, slides, and gesture operations based on time and frequency changes; In response to the user's click operation, switching between the current vehicle control state and the corresponding image processing logic; In response to the user's sliding operation, the distance, direction and speed of the user's finger sliding are collected and converted into vehicle control parameters; In response to the user's long press operation, relevant parameters are collected according to the changes in time and frequency, and corresponding vehicle control instructions are generated according to the collected parameters.

6. The method according to claim 1, characterized in that The sending of the vehicle control instruction to the vehicle and displaying a loading animation in a controllable component area in the vehicle model image interacted with by the user include: When the user's interactive operation is detected to be completed, a response event is triggered, and the vehicle control command is sent to the vehicle. During the period between sending the vehicle control command and receiving the control result, a loading animation is displayed in the area of ​​the controllable component where the user interacts, and the loading animation is used to prompt the user that the current operation is in progress; During the display period of the loading animation, the user's interactive operations in the area of ​​the controllable component are temporarily prohibited until the vehicle returns the control result and updates the status of the corresponding controllable component.

7. The method according to claim 1, characterized in that The updating of the display status of the controllable components in the vehicle model image according to the control result includes: Determine the current state of the controllable components in the vehicle model image according to the control result, and update the display state of the corresponding controllable components in the vehicle model image according to the current state of the controllable components; Send a request for obtaining the latest status to the server, and receive the latest vehicle control status of each controllable component returned by the server, and update the vehicle control list according to the latest vehicle control status of the controllable component; Alternatively, the client requests full refresh data from the server at a preset time interval. When the server detects that the vehicle control status has not changed, it returns a flag. When the server detects that the vehicle control status has changed, it updates the client interface based on the returned full refresh data.

8. A visual vehicle control device based on a vehicle model, characterized in that: include: A generating module is configured to obtain a list of controllable functions of a vehicle, and generate a vehicle model image corresponding to the vehicle model according to the list of controllable functions, wherein the vehicle model image includes a plurality of controllable components of the vehicle; A cutting module, configured to cut the controllable components in the car model image and determine the coordinate information corresponding to the controllable components; A drawing module, configured to draw the car model image and the controllable components on the interface of the client according to the interface size of the client and the coordinate information of the controllable components; A binding module, configured to bind the vehicle control state of the controllable component to the corresponding image processing logic, so that the controllable component updates the image according to the change of the vehicle control state; A conversion module is configured to respond to the user's interactive operation on the vehicle model image, collect corresponding parameters according to the interactive operation, and convert the parameters into vehicle control instructions; The update module is configured to send the vehicle control instruction to the vehicle, display the loading animation in the controllable component area in the vehicle model image where the user interacts, receive the control result returned by the vehicle, and update the display status of the controllable component in the vehicle model image according to the control result.

9. An electronic device comprising a memory, a processor and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the computer program, the steps of the method according to any one of claims 1 to 7 are implemented.

10. A computer-readable storage medium storing a computer program, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 7 are implemented.

Citation Information

Patent Citations

  • Method for remotely controlling vehicle, mobile terminal, and computer readable medium

    CN109324547A

  • Interaction method of vehicle-mounted system, vehicle and storage medium

    CN114924669A

  • Vehicle testing method, device, equipment and medium

    CN115576217A

  • Mobile terminal real-time vehicle condition display method and system based on 3D vehicle model

    CN116668664A

  • Modular vehicle hmi

    US20240264679A1

Cited By

  • Interaction method, interaction device, electronic equipment, storage medium and program product

    CN120523373A

  • Control method and device and vehicle

    CN120595975A

  • Interface generation system and method and vehicle

    CN122363803A