Skip to content

Openvino 25.1.0 #121

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 14 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 13 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/workflows/build-and-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ jobs:
contents: write
uses: ./.github/workflows/build-linux-bindings.yml
with:
OPENVINO_VERSION: '2025.0'
OPENVINO_VERSION: '2025.1'

build-windows-bindings:
permissions:
Expand All @@ -37,7 +37,7 @@ jobs:
contents: write
uses: ./.github/workflows/build-macos-bindings.yml
with:
OPENVINO_VERSION: '2025.0'
OPENVINO_VERSION: '2025.1'

package:
name: Package combined release
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/build-linux-bindings.yml
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ jobs:
- name: Install OpenVINO
run: |
sudo mkdir -p /opt/intel
curl -L https://storage.openvinotoolkit.org/repositories/openvino_genai/packages/2025.0/linux/openvino_genai_ubuntu22_2025.0.0.0_x86_64.tar.gz \
curl -L https://storage.openvinotoolkit.org/repositories/openvino_genai/packages/2025.1/linux/openvino_genai_ubuntu22_2025.1.0.0_x86_64.tar.gz \
--output openvino.tgz && tar -xf openvino.tgz && \
sudo mv openvino_genai_ubuntu22_${{ inputs.OPENVINO_VERSION }}.0.0_x86_64 /opt/intel/openvino && rm openvino.tgz
cd /opt/intel/openvino && sudo ./install_dependencies/install_openvino_dependencies.sh -y
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/build-macos-bindings.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ jobs:

- name: Install OpenVINO
run: |
curl -L https://storage.openvinotoolkit.org/repositories/openvino_genai/packages/2025.0/macos/openvino_genai_macos_12_6_2025.0.0.0_arm64.tar.gz \
curl -L https://storage.openvinotoolkit.org/repositories/openvino_genai/packages/2025.1/macos/openvino_genai_macos_12_6_2025.1.0.0_arm64.tar.gz \
-o /tmp/openvino.tar.gz
sudo mkdir /opt/intel
sudo tar -xvf /tmp/openvino.tar.gz -C /opt/intel
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/build-windows-bindings.yml
Original file line number Diff line number Diff line change
Expand Up @@ -99,10 +99,10 @@ jobs:
- name: Download and Install OpenVINO Runtime 24.6.0
shell: powershell
run: |
Invoke-WebRequest -Uri https://storage.openvinotoolkit.org/repositories/openvino_genai/packages/2025.0/windows/openvino_genai_windows_2025.0.0.0_x86_64.zip -OutFile openvino_runtime.zip
Invoke-WebRequest -Uri https://storage.openvinotoolkit.org/repositories/openvino_genai/packages/2025.1/windows/openvino_genai_windows_2025.1.0.0_x86_64.zip -OutFile openvino_runtime.zip
Expand-Archive -Path openvino_runtime.zip -DestinationPath C:/Intel/
Rename-Item -Path "C:/Intel/openvino_genai_windows_2025.0.0.0_x86_64" -NewName "openvino_2025.0.0"
dir C:/Intel/openvino_2025.0.0/
Rename-Item -Path "C:/Intel/openvino_genai_windows_2025.1.0.0_x86_64" -NewName "openvino_2025.1.0"
dir C:/Intel/openvino_2025.1.0/

# Step 11: Install Mediapipe Requirements
- name: Install Mediapipe Requirements
Expand Down
5 changes: 3 additions & 2 deletions lib/annotation.dart
Original file line number Diff line number Diff line change
Expand Up @@ -177,11 +177,12 @@
final String? csv;
final Map<String, dynamic>? json;
final String? overlay;
final String? source;

ImageInferenceResult({this.csv, this.json, this.overlay});
ImageInferenceResult({this.csv, this.json, this.overlay, this.source});

Check warning on line 182 in lib/annotation.dart

View check run for this annotation

Codecov / codecov/patch

lib/annotation.dart#L182

Added line #L182 was not covered by tests

factory ImageInferenceResult.fromJson(Map<String, dynamic> output) {
return ImageInferenceResult(csv: output["csv"], json: output["json"], overlay: output["overlay"]);
return ImageInferenceResult(csv: output["csv"], json: output["json"], overlay: output["overlay"], source: output["source"]);

Check warning on line 185 in lib/annotation.dart

View check run for this annotation

Codecov / codecov/patch

lib/annotation.dart#L185

Added line #L185 was not covered by tests
}

List<Annotation> parseAnnotations() {
Expand Down
3 changes: 3 additions & 0 deletions lib/deployment_processor.dart
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,9 @@
projectFile.writeAsStringSync(encoder.convert(jsonContent));
}
final project = Project.fromJson(jsonContent, projectFolder);
if (Config().externalModels.contains(projectFolder) && project is PublicProject) {
project.manifest.npuEnabled = true;

Check warning on line 65 in lib/deployment_processor.dart

View check run for this annotation

Codecov / codecov/patch

lib/deployment_processor.dart#L64-L65

Added lines #L64 - L65 were not covered by tests
}
project.loaded.complete();
return project;
} catch (exception, stack) {
Expand Down
5 changes: 4 additions & 1 deletion lib/importers/model_directory_importer.dart
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,10 @@

final source = File(projectJson).readAsStringSync();
final migrated = migrationManager.migrate(jsonDecode(source));
project = Project.fromJson(migrated, directory);
project = Project.fromJson(migrated, directory);
if (project is PublicProject) { // Always allow npu when importing a model manually
(project as PublicProject).manifest.npuEnabled = true;

Check warning on line 37 in lib/importers/model_directory_importer.dart

View check run for this annotation

Codecov / codecov/patch

lib/importers/model_directory_importer.dart#L35-L37

Added lines #L35 - L37 were not covered by tests
}
}
return project!;
}
Expand Down
2 changes: 1 addition & 1 deletion lib/importers/model_manifest.dart
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ class ModelManifest {
final String description;
final String task;
final String author;
final bool npuEnabled;
bool npuEnabled;
String? architecture;

ModelManifest({
Expand Down
21 changes: 17 additions & 4 deletions lib/interop/device.dart
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
final result = await Isolate.run(() {
final status = deviceOV.getAvailableDevices();

if (StatusEnum.fromValue(status.ref.status) != StatusEnum.OkStatus) {
if (status.ref.status != StatusEnum.OkStatus) {

Check warning on line 22 in lib/interop/device.dart

View check run for this annotation

Codecov / codecov/patch

lib/interop/device.dart#L22

Added line #L22 was not covered by tests
throw "GetAvailableDevices error: ${status.ref.status} ${status.ref.message.toDartString()}";
}

Expand All @@ -39,24 +39,37 @@
}
}

class Resolution {
final int width;
final int height;

const Resolution(this.width, this.height);

Check warning on line 46 in lib/interop/device.dart

View check run for this annotation

Codecov / codecov/patch

lib/interop/device.dart#L46

Added line #L46 was not covered by tests
}

class CameraDevice {
final int id;
final String name;
const CameraDevice(this.id, this.name);
final List<Resolution> resolutions;
const CameraDevice(this.id, this.name, this.resolutions);

Check warning on line 53 in lib/interop/device.dart

View check run for this annotation

Codecov / codecov/patch

lib/interop/device.dart#L53

Added line #L53 was not covered by tests

static Future<List<CameraDevice>> getDevices() async {
final result = await Isolate.run(() {
final status = deviceOV.getAvailableCameraDevices();

if (StatusEnum.fromValue(status.ref.status) != StatusEnum.OkStatus) {
if (status.ref.status != StatusEnum.OkStatus) {

Check warning on line 59 in lib/interop/device.dart

View check run for this annotation

Codecov / codecov/patch

lib/interop/device.dart#L59

Added line #L59 was not covered by tests
throw "GetAvailableDevices error: ${status.ref.status} ${status.ref.message.toDartString()}";
}

List<CameraDevice> devices = [];
for (int i = 0; i < status.ref.size; i++) {
List<Resolution> resolutions = [];
for (int j = 0; j < status.ref.value[i].size; j++ ){
resolutions.add(Resolution(status.ref.value[i].resolutions[j].width, status.ref.value[i].resolutions[j].height));

Check warning on line 67 in lib/interop/device.dart

View check run for this annotation

Codecov / codecov/patch

lib/interop/device.dart#L65-L67

Added lines #L65 - L67 were not covered by tests
}
devices.add(CameraDevice(
status.ref.value[i].id,
status.ref.value[i].name.toDartString()
status.ref.value[i].name.toDartString(),

Check warning on line 71 in lib/interop/device.dart

View check run for this annotation

Codecov / codecov/patch

lib/interop/device.dart#L71

Added line #L71 was not covered by tests
resolutions
));
}
deviceOV.freeStatusOrCameraDevices(status);
Expand Down
Loading
Loading