For option 2, I think you can extend caffe.LayerParameter by your self,
given that LayerParameter allows extension.

On Wed, Jun 21, 2017 at 1:12 AM Brian Palmer <[email protected]> wrote:

> Hi,
>
> it sounds to me like you should explore defining a new message that
> contains the LayerParameter as a field. For example,
>
> syntax = "proto2";
>
> package lynxcommando;
>
> message AugmentedLayerParameter {
>   optional caffe.LayerParameter base = 1;
>   optional MyNewParameter my_new_parameter = 2;
> }
>
> message MyNewParameter {
>
> };
>
> Alternatively, you could ask the caffe authors to add in an extension
> range to their messages, so that you can do
>
> extend caffe.LayerParameter {
>   optional MyNewParameter my_new_parameter = 12345;
> }
> in your my_new_parameter.proto.  See
> https://developers.google.com/protocol-buffers/docs/proto#extensions
>
> As a last resort, there is support for creating "dynamic messages," but
> most of the examples I found searching around were doing it in java or c++.
> https://stackoverflow.com/questions/18836727/protocol-buffer-objects-generated-at-runtime
>
>
>
> On Thu, Jun 15, 2017 at 11:30 PM, Lynx Commando <[email protected]>
> wrote:
>
>>
>> First, is caffe managed by yourself?
>> >No
>> Otherwise, I don't suggest change it by your own (may cause
>> incompatibility issues).
>> >Unfortunately I have to....
>> Second, this seems like a python question instead of protobuf.
>> >What I want to know is that if protobuf has a python api making it
>> easier.
>> >>More specifically , I am looking for something equivalent to a
>> boost::xml_parser that parses xml
>> >> In another word, I want to know if there is somepkg allows me to do
>> the following thing
>> >>> proto = somepkg.somecls.parse("src/caffe/caffe.proto")
>> >>>
>> proto['LayerParameter'].append(somepkg.somecls.optional_field("MyNewParam","my_new_param",param_id))
>> >>> for fields in my_field_list:
>> >>>      proto['MyNewParam'].append(field)
>> >>> somepkg.somecls.write(proto,"src/caffe/caffe.proto")
>>
>>
>>
>>
>> On Friday, June 16, 2017 at 2:21:17 AM UTC+8, Bo Yang wrote:
>>>
>>> First, is caffe managed by yourself? Otherwise, I don't suggest change
>>> it by your own (may cause incompatibility issues).
>>> Second, this seems like a python question instead of protobuf.
>>>
>>> On Wed, Jun 14, 2017 at 8:54 PM Lynx Commando <[email protected]>
>>> wrote:
>>>
>>>> More specifically, I am using caffe and I'd like to add new layers to
>>>> it.
>>>> Then I need to modify the caffe.proto file by adding(or removing) some
>>>> messages and corresponding fields to some other messages.
>>>> I'd want to  know if I can do this automatically with a python script.
>>>>
>>>> --
>>>> You received this message because you are subscribed to the Google
>>>> Groups "Protocol Buffers" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send
>>>> an email to [email protected].
>>>> To post to this group, send email to [email protected].
>>>> Visit this group at https://groups.google.com/group/protobuf.
>>>> For more options, visit https://groups.google.com/d/optout.
>>>>
>>> --
>> You received this message because you are subscribed to the Google Groups
>> "Protocol Buffers" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to [email protected].
>> To post to this group, send email to [email protected].
>> Visit this group at https://groups.google.com/group/protobuf.
>> For more options, visit https://groups.google.com/d/optout.
>>
>
> --
> You received this message because you are subscribed to the Google Groups
> "Protocol Buffers" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To post to this group, send email to [email protected].
> Visit this group at https://groups.google.com/group/protobuf.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"Protocol Buffers" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/protobuf.
For more options, visit https://groups.google.com/d/optout.

Reply via email to